아이템 41. 정의하려는 것이 타입이라면 마커 인터페이스를 사용하라.
이펙티브 자바아이템 41. 정의하려는 것이 타입(ElementType.TYPE)이라면 마커 인터페이스를 사용하라.아무 구현이 없고 단지 자기를 구현하는 클래스가 특성 속성을 가짐을 표시해주는것 인터페이스를 마커인터페이스라고 한다. 대표적인 예가 Serializable이 ...
Read more
IDE 별 프로퍼티 인코딩에 따른 설정
IDE 별 프로퍼티 인코딩에 따른 설정이클립스와 인텔리제이의 인코딩에 따른 주석 코드에 변화가 있다.아래를 보면 처음엔 이클립스에서 작성한 프로퍼티를 보면 그 다음엔 인텔리제이로 수정을 하면 위에 설정을 체크 하고 보면 수정됨 그렇게 되면 기존 과 코드가 틀리다 ...
Read more
아이템 40. @Override 에너테이션을 일관성 있게 사용하라.
이펙티브 자바아이템 40. @Override 에너테이션을 일관성 있게 사용하라.@Override를 달면 재정의를 잘못하는 경우를 알려준다 아래의 예를 보자. 123456789101112131415161718192021222324252627282930313233packa ...
Read more
데이터 베이스 코드 테이블의 값을 Enum 으로 바꾸기
데이터 베이스 코드 테이블의 값을 Enum 으로 바꾸기일단 데이터 베이스에서 공통을 정의 하고 많이 쓰실텐데 코드에서 들어 오는 값이랑 DB 값이랑 불일치 하는 경우가 있다. java 1.5 이전 버전에는 아래 처럼 선언 하고 썼다. 123456789package co ...
Read more
아이템 39. 명명 패턴보다는 애너테이션을 사용하라
이펙티브 자바아이템 39. 명명 패턴보다는 애너테이션을 사용하라junit3 버전과 junit4 버전에 차이점을 보면 테스트 메소드가 무조건 test라는 단어로 시작이 되어야 되었는데junit4버전은 @Test 어너테이션으로 대체 되었다. 명명 패턴에 문제점 오타가 나 ...
Read more
JDK ArrayList는 왜 List를 implement를 하고 있나요?
JDK ArrayList는 왜 List를 implement를 하고 있나요?Arrays 클래스 123456public static <T> List<T> asList(T... a) { return new ArrayList<>( ...
Read more
코딜러티 문제(binary gap)
코딜러티 문제(binary gap)코딜러티 문제를 풀어 봤는데요 전 자바 버전으로 풀었습니다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 ...
Read more
java_annotations
AnnotationAnnotation(메타 데이터의 한 형태)은 프로그램 자체에 포함되지 않은 프로그램에 대한 데이터를 제공합니다.Annotation은 Annotation이 달린 코드의 작동에 직접적인 영향을 미치지 않습니다. Annotations에는 다음과 같은 여러 ...
Read more
아이템 38. 확장할수있는 열거 타입이 필요하면 인터페이스를 사용하라.
이펙티브 자바아이템 38. 확장할수있는 열거 타입이 필요하면 인터페이스를 사용하라.123456789package com.github.sejoung.codetest.enumtest.enuminterface;// 코드 38-1 인터페이스를 이용해 확장 가능 열거 타입을 흉 ...
Read more
아이템 37. ordinal indexing 대신 EnumMap을 사용하라.
이펙티브 자바아이템 37. ordinal indexing 대신 EnumMap을 사용하라.123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354pa ...
Read more