이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 제네릭으로 프로그램하다 보면 많은 컴파일러 경고 메시지를 보게 된다. 무점검 형변환 경고(unchecked cast warning), 무점검 메서드 호출 경고(unchecked method invocation warning), 무점검 제네릭 배열 생성 경고(unchecked generic array creation warning), 그리고 무점검 변환 경고(unchecked conversion warning) 등이 있다.코드의 형 안전성(typesafe) 보장을 위해 모든 무점검 경고는, 가능하다면 없애야 한다. 제거할 수 없는 경고 메시지는 형 안..
JSTL 태그를 통해 JSP 페이지에서 반복, 상태제어, 국제화(i18n), SQL 등을 사용할 수 있습니다. 하지만 때로는 이것들이 충분하지 않기 때문에 JSP페이지에서 약간의 작업을 수행하기 위해 자바스크립트를 쓰려는 유혹에 빠질 수 있습니다. 다행히도 JSP는 확장 가능하며 특정 작업을 수행할 수 있도록 고유한 사용자 지정 태그를 생성할 수 있습니다. JSP 커스텀 태그 (JSP Custom Tag) 예를들어, 우리는 숫자가 콤마와 소수점 2번째 자리까지만 보여지도록 하고싶다고 가정합시다. 이는 숫자가 매우 길때 유용할 수 있습니다. 그래서 다음과 같은 커스텀 태그를 만들면 편하게 사용할 수 있을 것입니다. 위의 커스텀 태크를 통해 number에 입력된 숫자가 format 형식에 맞게 100,050..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 선언부에 형인자(type parameter)가 포함된 클래스나 인터페이스는 제네릭(generic) 클래스나 인터페이스라 부르고, 이 둘은 제네릭 자료형(generic type)이라 부른다.각 제네릭 자료형은 형인자 자료형(parameterized type) 집합을 정의한다. List는 원소 자료형이 String인 리스트를 나타내는 형인자 자료형이다.또한 각 제네릭 자료형은 무인자 자료형(raw type)을 정의할 수 도있다. List의 무인자 자료형은 List다. // 무인자 컬렉션 자료형 private final Collection stamps =..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 중첩 클래스(nested class)는 다른 클래스 안에 정의된 클래스다. 중첩 클래스에는 정적 멤버 클래스), 비-정적 멤버 클래스, 익명 클래스, 지역 클래스 이렇게 네 가지 종류가 있다. 첫 번째를 제외한 나머지는 전부 내부 클래스(inner class)다. 정적 멤버 클래스 (static member class) 바깥 클래스의 모든 멤버에(private로 선언된 것까지도) 접근할 수 있다 바깥 클래스의 정적 멤버이며, 다른 정적 멤버와 동일한 접근 권한 규칙(accessibility rule)을 따른다 바깥 클래스와 함께 사용할 때만 유용한 ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 프로그래밍 언어 가운데는 함수 포인터(function pointer), 대리자(delegate), 람다(lamda expression) 처럼, 특정 함수를 호출할 수 있는 능력을 저장하고 전달할 수 있도록 하는 것들이 있다. 예를 들어 C 표준 라이브러리에 포함되어 있는 qsort 함수는 비교자(comparator) 함수에 대한 포인터를 인자로 받아 정렬할 요소들을 비교한다. 이것은 전략(strategy) 패턴의 한 사례로 비교자 함수를 통해 정렬 전략을 표현하는 것이다.자바는 함수 포인터를 지원하지 않는다. 하지만 객체 참조를 통해 비슷한 효과를 ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 때로 두 가지 이상의 기능을 가지고 있으며, 그중 어떤 기능을 제공하는지 표시하는 태그(tag)가 달린 클래스를 만날 때가 있다. class Figure { enum Shape { RECTANGLE, CIRCLE }; // 어떤 모양인지 나타내는 태그 필드 final Shape shape; // 태그가 RECTANGLE일 때만 사용되는 필드 double length; double width; // 태그가 CIRCLE일 때만 사용되는 필드 double radius; // 원을 만드는 생성자 Figure(double radius) { shape = Sh..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 인터페이스를 구현하는 클래스를 만들게 되면, 그 인터페이스는 해당 클래스의 객체를 참조할 수 있는 자료형(type) 역할을 하게 된다. 그 외 다른 목적으로 인터페이스를 정의하고 사용하는 것은 적절치 못하다.이 기준에 미달하는 사례로 소위 상수 인터페이스(constant interface)라는 것이 있다. public interface ObjectStreamConstants { short STREAM_MAGIC = -21267; short STREAM_VERSION = 5; byte TC_BASE = 112; byte TC_NULL = 112; ....
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 자바 언어에는 여러 가지 구현을 허용하는 자료형을 만드는 방법이 두 가지 포함되어 있다. 인터페이스와 추상 클래스(abstract class)이다.인터페이스는 인터페이스가 규정하는 일반 규약(general contract)을 지키기만 하면되며, 그렇게 만든 클래스는 클래스 계층(class hierarchy)에 속할 필요가 없다.추상 클래스는 추상 클래스가 규정하는 자료형을 구현하기 위해서 반드시 계승을 해야 한다. 이에 따른 많은 제약이 발생하게 된다. 1. 이미 있는 클래스를 개조해서 새로운 인터페이스를 구현하도록 하는 것은 간단하다 필요한 메서드..
- Total
- Today
- Yesterday
- 이펙티브 자바
- 웹프로그래밍
- CSS
- ruby
- 반도체관련주
- 투자전략
- SK하이닉스
- 현대차
- ubuntu
- javascript
- ruby on rails
- OpenStack
- 이수페타시스
- 한미반도체
- 주식투자
- Rails
- Java
- codecademy
- 국제유가
- rabbitmq
- 한화에어로스페이스
- 흥구석유
- Message Queue
- install
- 알고리즘
- HBM
- 삼성전자
- html
- 프로그래밍
- 자료구조
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
