목록Java (181)
충분히 쌓여가는
애너테이션 주석처럼 프로그래밍 언어에 영향을 미치지 않으며, 유용한 정보를 제공 애너테이션 사용 예 @Test // 이 메서드가 테스트 대상임을 테스트 프로그램에게 알린다 public void method() { ... } 표준 애너테이션 애너테이션 설명 @Override 컴파일러에게 오버라이딩하는 메서드라는 것을 알린다 @Deprecated 앞으로 사용하지 않을 것을 권장하는 대상에 붙인다 @SuppressWarnings 컴파일러의 특정 경고메시지가 나타나지 않게 해준다 @SafeVarargs 지네릭스 타입의 가변인자에 사용한다 @FunctionalInterface 함수형 인터페이스라는 것을 알린다 @Native native 메서드에서 참조되는 상수 앞에 붙인다 @Target* 애너테이션이 적용가능한 ..
열거형에 멤버 추가하기 불연속적인 열거형 상수의 경우, 원하는 값을 괄호()안에 적는다 enum Direction { EAST(1), SOUTH(5), WEST(-1), NORTH(10) } 괄호()를 사용하려면, 인스턴스 변수와 생성자를 새로 추가해 줘야한다 enum Direction { EAST(1), SOUTH(5), WEST(-1), NORTH(10); // 끝에 ';'를 추가 private final int value; // 정수를 저장할 필드(인스턴스 변수)를 추가 Direction(int value) { this.value = value; } // 생성자를 추가, 생성자 앞에 항상 private 생략되어 있다 // private Direction(int value) { this.value =..
열거형(enum) 관련된 상수들을 같이 묶어 놓은 것, JAVA는 타입에 안전한 열거형을 제공 위의 코드를 class Card { static final int CLOVER = 0; static final int HEAET = 1; static final int DIAMOND = 2; static final int SPADE = 3; static final int TWO = 0; static final int THREE = 1; static final int FOUR = 2; final int kind; final int num; } 간단하게 열거형으로 정리 class Card { // 0, 1, 2, 3 enum Kind { CLOVER, HEART, DIAMOND, SPADE } // 열거형 Kind..
지네릭 타입의 형변환 지네릭 타입과 원시 타입 간의 형변환은 바람직 하지 않다(경고 발생) Box objBox = null; Box box = (Box)objBox; // OK, 지네릭 타입 -> 원시 타입, 경고 발생 objBox = (Box)box; // OK, 원시 타입 -> 지네릭 타입, 경고 발생 코드 import java.util.ArrayList; class Fruit implements Eatable { public String toString() { return "Fruit";} } class Apple extends Fruit { public String toString() { return "Apple";}} class Grape extends Fruit { public String t..