본문 바로가기

Programming

(470)
중첩 클래스&인터페이스(2) - 중첩 클래스의 종류 2 : 정적 멤버 / 로컬 클래스 앞서서 우리는 살펴본 중첩 클래스의 분류 중, 멤버 클래스의 한 종류인 인스턴스 멤버 클래스를 살펴보았습니다. 중첩 클래스&인터페이스(2) - 중첩 클래스의 종류 1 : 인스턴스 멤버 클래스 중첩 클래스는 '클래스 내부에' 선언되는 클래스입니다. 이때, 이 중첩 클래스는 내부에 선언되는 위치에 따라서 종류가 분류됩니다. 종류는 크게 다음 두 가지가 있습니다. · 멤버 클래스 · 로 nozeroslope.tistory.com 이번에는 남은 멤버 클래스인 정적(static) 멤버 클래스와 로컬 클래스를 살펴보겠습니다. ○ 정적 멤버 클래스 인스턴스 멤버 클래스에서 제약사항은 static 키워드를 쓰는 필드나 메서드를 사용할 수 없다는 점이었습니다. 그렇다면 이번 정적 멤버 클래스에서는 static을 사용할 ..
[CSS] 2. 텍스트 스타일(6) - 표 스타일 우리는 앞서 HTML 챕터에서 표를 만들고 행을 생성하는 기본적인 과정을 배웠습니다. 이제 이렇게 생성된 표에 적용할 수 있는 스타일에 대해서도 한번 살펴보도록 하겠습니다. 2. 내용 입력하기(3) - 표 생성하기 1 이제 html 문서 내에서 표를 만드는 방법을 살펴볼 차례입니다. 일반적으로 워드프로세서나 게시판의 텍스트 에디터에서는 표 생성 도구가 제공되기 때문에 아주 간편하게 드래그나 행/열 칸 수 nozeroslope.tistory.com 2. 내용 입력하기(3) - 표 생성하기 2 지난 시간에는 기본적인 표(table)의 생성과 영역의 구분에 대해서 학습했습니다. 표의 외형과 스타일을 지정하는 부분에 대해서는 추구 CSS 학습을 통해 진행할 예정이니 조금만 기다려 주세요. 2 nozeroslop..
중첩 클래스&인터페이스(2) - 중첩 클래스의 종류 1 : 인스턴스 멤버 클래스 중첩 클래스는 '클래스 내부에' 선언되는 클래스입니다. 이때, 이 중첩 클래스는 내부에 선언되는 위치에 따라서 종류가 분류됩니다. 종류는 크게 다음 두 가지가 있습니다. · 멤버 클래스 · 로컬 클래스 분류 선언 위치 특성 멤버 클래스 인스턴스 멤버 클래스 class A { class B { ... } } - 클래스 A 객체가 생성되어야만 사용할 수 있는 중첩 B 클래스 : 그래서 클래스 B에는 static 멤버 / 메서드 선언 불가 정적 멤버 클래스 class A { static class B { ... } } - 클래스 A를 통해 바로 접근할 수 있는 중첩 B 클래스 로컬 클래스 class A { void method( ) { class B { ... } } } - method( )가 실행 중일 때만..
[CSS] 2. 텍스트 스타일(5) - 목록 스타일 우리는 앞선 과정에서 , , 를 사용한 목록 리스트에 대해서 살펴본 적이 있습니다. 사실 이것은 단순히 워드 프로그램에서의 순서를 나타내는 기능 정도로만 생각했겠지만, 사실 상용 웹사이트에서의 대부분 메뉴 바 디자인이나 목록 들은 이 목록에 디자인을 접목하여 구현하는 기능입니다. 생각보다 활용도가 높다는 이야기죠. 이번 아티클에서는 이 목록의 스타일과 관련한 스타일 속성과 응용 패턴을 살펴보도록 하겠습니다. ○ list-style-type : 태그 불릿 모양 / 번호 스타일을 지정 태그를 사용하여 목록을 만들게 될 경우, 원이나 네모 모양 혹은 숫자 / 알파벳을 통해 각 목록의 리스팅을 만들 수 있는데 이 불릿 모양을 지정할 수 있습니다. 즉, 해당 속성을 통해 하위 리스트의 불릿 모양을 지정하게 됩니다..
중첩 클래스&인터페이스(1) 기본적으로 OOP에서는 여러 클래스들이 서로 밀접한 관계를 맺고, 다양한 상호작용을 하게 됩니다. 광범위하게 사용되는 클래스도 있고, 한정된 클래스끼리 특수한 관계를 맺기도 합니다. 지금까지 우리는 대부분의 클래스를 독립적으로 작성해 오는 것을 당연하게 여겼는데, 이러한 클래스들은 여러 가지 클래스끼리 관계를 맺기 때문이었습니다. 하지만 어떤 클래스가 특정 클래스만 특수한 관계를 맺는 경우에는, 해당 클래스를 클래스 내부에 다시 선언하는 경우가 있습니다. 이렇게 클래스 내부에 선언한 클래스를 중첩 클래스(Nested Class)라고 합니다. 이렇게 중첩 클래스를 사용하게 되는 경우, 클래스간의 멤버에 쉽게 접근이 가능하면서 동시에 외부와의 불필요한 클래스 관계를 방지하게 되면서 코드 작성에 있어서 효율화..
[CSS] 2. 텍스트 스타일(4) - 텍스트 정렬 2 ○ text-decoration : 텍스트의 줄 표시 / 없애기 text-decoration 속성을 이용해서 흔히 사용하는 텍스트의 밑줄 또는 취소선을 작성할 수 있게 됩니다. 그리고 의외로 많은 분들이 궁금해하는! 텍스트에 하이퍼링크 적용 시 나타나는 밑줄을 없애는 것도 이 속성을 이용해서 실행할 수 있습니다. text-decoration 속성 값에는 다음과 같은 종류가 있습니다. · none : 텍스트에 줄 표시하지 않음 · underline : 밑줄 표시 · overline : 윗줄 표시 · line-through : 취소선 표시 none 속성입니다. under line 속성입니다. over line 속성입니다. line through 속성입니다. ○ text-shadow : 텍스트에 그림자 효과 ..
인터페이스(13) - 디폴트 메서드가 있는 인터페이스의 상속 우리는 인터페이스 사이에도 상속관계가 있음을 배웠죠? 그럼 인터페이스의 상속이 이루어진 상태에서, 디폴트 메서드는 어떻게 동작하게 될지에 대해서도 살펴보도록 하겠습니다. 기본적으로는 추상 메서드와 마찬가지로, 디폴트 메서드 역시 상속이 이루어질 것입니다. 하지만, 이런 단순 상속을 통한 디폴트 메서드의 사용 이외에도 몇 가지 사용 방식이 존재합니다. 이 부분에 대해서 다음과 같이 살펴보도록 하겠습니다. 1. 디폴트 메서드를 그냥 상속해서 사용합니다. 2. 디폴트 메서드를 상속한 다음, 오버라이드 합니다. 3. 디폴트 메서드를 추상 메서드로 재선언 합니다. 우선, 예제에서 사용할 인터페이스 ParentInterface가 다음과 같습니다. public interface ParentInterface { pub..
인터페이스(12) - 디폴트 메서드와 인터페이스의 확장 디폴트 메서드를 배웠던 것을 기억하실 것입니다. 디폴트 메서드는, 기본적으로 인터페이스에서 선언되는 추상 메서드와 달리 메서드의 실행 코드까지 모두 선언되는 메서드였습니다. 선언은 인터페이스에서 되어 있지만, 실제로 실행은 구현 객체를 통해서 이루어지는 독특한 성질을 갖고 있다는 것도 설명했습니다. 인터페이스로서는 상당히 예외적이고 특이한 케이스입니다. 다만 별다른 조작 없이 구현 클래스 인스턴스를 통해서 인터페이스 객체에서 실행 가능하다는 기본 메서드로서의 장점은 있지만 - 정확히 이 디폴트 메서드가 왜 필요한지에 대해서 상세히 살펴보도록 하겠습니다. 인터페이스에 선언된 디폴트 메서드의 가장 기본적인 특징은, 구현 클래스에서 오버라이드를 의무적으로 하지 않아도 된다는 점입니다. 이 특성은, 인터페이스의..