본문 바로가기

Programming

(477)
상속(6) - 타입 변환과 다형성 1(★) 지금부터는 JAVA와 OOP 언어에서 핵심적이면서도 복잡한 내용을 가진 다형성에 대한 내용을 다루겠습니다. 우선, 다형성의 개념을 한 번 간단히 정의해 보자면 "같은 타입을 사용하지만, 다양한 결과가 나올 수 있는 성질"을 의미합니다. 언뜻 한 번에 쉽게 다가오는 개념은 아닙니다. 좀 더 객체(클래스)의 관점에서 설명하면 "하나의 타입에, 여러 타입의 객체를 대입하여 다양한 기능을 구연한다."고도 설명할 수 있습니다. 통상적인 개념에서는 잘 와닿지 않습니다. 하지만, 지금 우리가 이 다형성의 특징을 공부하는 파트는 '상속' 파트입니다. 결국 [하나의 타입 - 여러 다른 성질 대입]이란 특성은 상속으로부터 비롯되는 성질이라는 점을 먼저 눈치챌 수 있어야 합니다. 그러나 애초에 다형성이라는 특징은 일상적인 ..
2. 내용 입력하기(3) - 표 생성하기 1 이제 html 문서 내에서 표를 만드는 방법을 살펴볼 차례입니다. 일반적으로 워드프로세서나 게시판의 텍스트 에디터에서는 표 생성 도구가 제공되기 때문에 아주 간편하게 드래그나 행/열 칸 수만 입력해서 자유롭게 표를 만들어왔을 것입니다. 하지만 html로 표를 생성하는 방법은 생각보다 까다롭게 느껴질 것입니다. 하지만 목록 리스트 생성과 마찬가지로, 표 작성 방법은 다양한 방식으로 CSS와 함께 사용되면서 중요한 역할을 하기 때문에, 귀찮게 느껴지더라도 꼭 배워야 할 내용임을 기억해야 합니다. 우선 가장 기본적으로 알아야 할 것은 당연히 행(row)과 열(column)의 개념입니다. 가로(행)와 세로(열)가 만나서 생기는 하나의 데이터 영역은 셀(cell)이라고 칭하게 됩니다. 앞으로 표를 다루는 데 있어..
상속(5) - protected 접근 제한자(★★) 접근 제한자의 종류에는 public, default, private와 더불어 protected가 있습니다. 이 중 public/default/private는 잘 알려져 있지만, protected의 경우에는 상속과 밀접한 관련이 있는 키워드입니다. protected 접근 제한자가 어떤 식으로 상속 클래스에서 동작하는지에 대해서 살펴보도록 하겠습니다. 우선, public과 private의 경우 접근 구분이 명확할 것입니다. public은 대부분의 제한 없이 사용할 수 있으며, private는 오직 해당 클래스에서만 호출과 사용이 가능하다는 점 때문에 기억하기 쉽습니다. default의 경우에는 사용이 public에 가깝지만, 반드시 "같은 패키지 내에서"만 사용이 가능하다는 특징을 갖고 있습니다. 즉 별도의..
2. 내용 입력하기(2) - 목록 생성하기 목록을 생성한다고 하면, 주로 글에서 순서대로 목록을 텍스트로 나열하는 기능만을 생각하실 것입니다. 물론, 텍스트와 콘텐츠의 줄 별 정렬을 위해서도 사용하지만 CSS를 통해서 내비게이션이나 콘텐츠의 배열을 구성하는 데 있어서도 응용하여 다양하게 사용되는 태그입니다. 이번 아티클에서는 html에서의 목록 태그를 살펴보도록 하겠습니다. ○ , - 순서가 있는 목록 만들기 은 기본적으로 ordered list의 줄임말입니다. 즉, 각 목록 콘텐츠에 순서(숫자나 알파벳 등)이 배정되는 리스트 목록을 의미합니다. 태그로 리스트를 생성하고 내부에 태그를 통해서 콘텐츠를 삽입하게 됩니다. 아래 예시를 살펴보겠습니다. 순서있는 리스트 생성하기 순서있는 리스트는 ordered list를 의미합니다. 첫 번째 입니다. 두..
상속(4) - final 클래스와 메서드 기본적으로 필드 값에 대한 학습을 진행하면서 final 필드에 대해서 살펴보았습니다. 요약하면, 필드 선언 시 final로 선언되면 초기값을 설정한 이후로는 그 값을 변경할 수 없다는 것이 정의였습니다. 그렇다면, 필드뿐 아니라 클래스/메서드에 final이 선언될 경우에는 어떤 특성을 갖게 될까요? 하나씩 살펴보도록 하겠습니다. 우선 final 클래스에 대해서 살펴보겠습니다. final 클래스는 정의가 생각보다 간단합니다. 특정 클래스가 final로 선언된다면, 어떤 제한이 생길까요? 설마 클래스의 내용을 바꿀 수 없다? 같은 정의는 와닿지 않습니다. 지금 우리가 배우는 카테고리가 '상속'인 만큼, 상속과 관련되어 있습니다. 바로 - final 클래스는 "부모 클래스가 될 수 없다, 즉 상속할 수 없는 ..
2. 내용 입력하기(1) - 텍스트 입력 2 앞서 살펴본 텍스트 입력과 관련된 태그를 계속해서 살펴보도록 하겠습니다. 기억이 나지 않는다면, 다시 한번 체크해 둡시다. 2. 내용 입력하기(1) - 텍스트 입력 1 이제부터 본격적으로 html 웹 문서 내에 내용을 입력하는 과정을 살펴보겠습니다. 우선은, 가장 기본 중의 기본이라 할 수 있는 텍스트 입력에 대해 살펴볼 것입니다. 굳이 설명이 필요한 내용인 nozeroslope.tistory.com ○ - 인용문 어떤 콘텐츠를 작성할 때, 다른 출처에서 직접인용을 하여 표시하게 되는 경우가 있습니다. 예를 들어 따옴표나 별도의 박스 형태로 누군가의 발언이나 논문의 단락을 직접 표시하는 경우가 있겠죠. 여러 가지 이유로, 브라우저 상에서 특정 단락이나 영역이 '인용문이다'라고 인식할 수 있는 방법이 있습..
상속(3) - 메서드 재정의(override) 2 우리는 앞서 자식 클래스에서 오버라이드를 통해 부모 클래스에서 선언된 메서드를 재정의해 사용하는 내용을 살펴보았습니다. 결국 "자식 클래스 안에서 오버라이드 된 메서드를 선언하고 사용하면, 부모 클래스에서 선언된 메서드는 숨겨진다."라는 대원칙을 따른다는 내용도 확인했습니다. 하지만, 때에 따라서는 자식 클래스에서도 부모 클래스에서 선언된 메서드를 호출하여 사용해야 할 상황도 언제든지 발생할 것입니다. 이 때는 가변적으로 자식 클래스에서 오버라이드 된 메서드가 아닌, 부모 클래스의 메서드를 호출하기 위한 키워드인 super를 사용하게 됩니다. 아마 부모 클래스의 생성자를 명시적으로 호출하는 super( )를 기억하실 겁니다. 동일한 키워드이므로, 부모 클래스의 요소를 호출하는 키워드라고 기억하시면 되겠습..
2. 내용 입력하기(1) - 텍스트 입력 1 이제부터 본격적으로 html 웹 문서 내에 내용을 입력하는 과정을 살펴보겠습니다. 우선은, 가장 기본 중의 기본이라 할 수 있는 텍스트 입력에 대해 살펴볼 것입니다. 굳이 설명이 필요한 내용인가? 싶기도 하겠지만, 잘 기억해두어야 하는 내용이며 티스토리를 포함한 각종 html 편집 툴, 마크다운 문서를 사용하는 경우에도 크게 도움이 됩니다. ○ 태그 - 제목 텍스트 태그 , ... 형태로 사용하는 태그는 'heading', 즉 제목을 위한 태그입니다. 1 ~ 6까지의 숫자를 사용하며 1이 가장 큰 제목의 형태입니다. 제목을 넣읍시다 크기의 차이가 느껴지십니까? 간단하게 넘어가 봅시다 HTML 삽입 미리보기할 수 없는 소스 ○ 와 태그 - 단락, 줄 바꿈 사실 여러 텍스트 편집기를 사용하시던 분들이라면 은..