다형성
-
다형성(Polymorphism)TIL(Today I Learned) 2022. 9. 26. 20:45
다형성이란? 다형성은 하나의 타입에 여러 객체를 대입할 수 있는 성질입니다. 다형성을 활용하면 기능을 확장하거나, 객체를 변경해야할 때 타입 변경 없이 객체 주입만으로 수정이 일어나게 할 수 있습니다. 또한 상속을 사용한다면 중복되는 코드까지 제거할 수 있으므로 더욱 객체 지향 설계와 가까워질 수 있습니다. 자바에서 다형성을 지원하는 방법으로 메서드 오버로딩과 오버라이딩이 있습니다. 다형성의 쉬운 예시로 동물을 들겠습니다. 거의 대부분의 동물들의 특징은 달리거나 걷거나 잠을 잡니다. 그리고 동물들의 종류는 다양합니다. 원숭이, 강아지, 기린, 코뿔소..등 동물이라는 하나의 타입에 원숭이, 강아지, 기린, 코뿔소와 같은 여러 객체를 대입할 수 있고 공통된 기능(걷기, 자기, 뛰기..등)을 오버라이딩 하여 ..
-
TIL 27 (2021.11.17)TIL(Today I Learned) 2021. 11. 17. 19:45
Spring Container 🎯 BeanDefinition (= interface)이 아래 데이터들(metadata)의 추상화 역할을 해서 읽어드린다. AppConfig.class (= 구현체) appConfig.xml appConfig.xxx Singleton Pattern🎯 pure java는 웹(클라이언트)에서 요청이 올때마다 새로운 객체를 생성한다. 이는 Memory waste를 초래한다 해결방안 : Singleton pattern을 사용한다. Singleton은 하나의 객체만 생성하고 공유하도록 설계가 가능하다. Problems of Singleton Pattern DIP 위반 테스트의 어려움 복수의 생성자 생성의 어려움(다형성을 크게 떨어트림) SpringContainer(SingletonC..