-
Annotation과 리플렉션이 뭘까? 어떤 관계일까?
어노테이션은 코드(클래스, 메서드, 필드, 변수 등)에 메타 데이터를 추가하여, 컴파일 과정과 실행 과정에서 코드를 어떻게 컴파일하고 처리할 것인지를 알려주는 정보이다. 보통 아래 3가지 용도로 사용된다.컴파일러에게 코드 문법 에러를 체크하도록 정보를 제공한다.( @Override, @Deprecated, @SuppressWarnings )소프트웨어 개발 툴이 빌드나 배포 시 코드를 자동으로 생성할 수 있도록 정보를 제공한다.( @Getter, @Setter, @Builder, @Entity )실행 시(런타임 시) 특정 기능을 실행하도록 정보를 제공한다. (@Autowired, @Transactional, @RequestMapping, @Scheduled )어노테이션 정의어노테이션은 @interface ..
Java/일반
2024. 10. 22.
-
Java의 final 키워드, 사용법과 객체 참조 시 주의점은?
정의final 키워드는 자바에서 변경을 제한하기 위해 사용하는 제어자이다. 이는 클래스, 메서드, 멤버 변수, 지역 변수, 매개 변수 등 다양한 곳에서 사용할 수 있으며, 각각의 의미가 다르므로 정확하게 알아두어야 한다. final을 사용하면 상속, 오버라이딩, 변수 값 변경 등을 제한하여 안정성과 불변성을 보장하기 위해 사용한다.final 클래스클래스 앞에 final 키워드를 붙이면 상속이 불가능한 클래스가 된다.즉, 이 클래스는 자식 클래스를 만들 수 없으며, 이를 통해 클래스의 설계가 변경되지 않도록 보호할 수 있다.대표적인 예로, String 클래스와 Wrapper 클래스들(Integer, Double 등)은 final 클래스로 선언되어 있다.public final class Animal { ..
Java/일반
2024. 10. 2.