본문 바로가기

Java/기초

[Java] 리플렉션 (Reflection)

리플렉션은 일반적으로 Java 가상 머신에서 실행되는 애플리케이션의 런타임 동작을 검사하거나 수정하는 기능이 필요한 프로그램에서 사용된다.

리플렉션은 강력하지만 무분별하게 사용해서는 안 된다. 리플렉션을 사용하지 않고 작업을 수행할 수 있다면 사용을 피하는 것이 좋다. 리플렉션을 통해 코드에 액세스할 때 다음 사항을 염두에 두어야 한다.

  • 장점
    • 확장성
    • 디버거 및 테스트 도구
  • 단점
    • 성능 오버헤드
    • 보안 제한
    • 내부 노출

 

 

 

 

출처 : 

https://docs.oracle.com/javase/tutorial/reflect/index.html

 

Trail: The Reflection API (The Java™ Tutorials)

The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See Java Language Changes for a summary of updated

docs.oracle.com

 

'Java > 기초' 카테고리의 다른 글

[Java] 중첩클래스(Nested Classes)  (0) 2021.09.05
[Java] 익명클래스(Anonymous Classes)  (0) 2021.09.05
[Java] LocalDateTime  (0) 2021.08.30
[Java] Optional  (0) 2021.08.25
[Java] 입력 뜯어보기(Scanner, InputStream, BufferdReader)  (0) 2021.08.14