클래스(2)
-
03. 타입과 추상화
추상화의 의도는 목적에 집중 - 지하철 노선토 핵심은 정확한 지형 정보가 아닌 갈아타는 위치 알아야 하는 사실만 정확하게 표현, 몰라도 되는 정보는 무시 추상화의 목적 : 불필요한 부분을 무시해서 현실에 존재하는 복잡성을 극복 # 추상화 어떤 양상, 사항, 구조를 좀 더 명확하게 이해하기 위해 특정 절차나 물체를 의도적으로 생략하거나 감춰서 복잡도를 극복하는 방법 ## 추상화 차원 - 구체적인 사물들 간 공통점을 취하고, 차이점은 버리는 일반화를 통해 단순화 - 중요한 부분을 강조하기 위해 불필요한 세부 사항을 제거하여 단순화 # 객체 분류의 관점 - 심블 : 개념을 가리키는 간략한 명칭 : 트럼프 - 내연 : 개념의 완전한 정의, 객체가 개념에 속하는지 여부를 확인 가능 : 몸이 납작한 네모 모퉁이 -..
2023.05.29 -
4장 : 클래스와 인터페이스
아이템 15. 클래스와 멤버의 접근 권한을 최소화하라 - 클래스 내부 데이터 및 구현 정보를 외부 컴포넌트로부터 잘 숨겨야 : 캡슐화 - 모든 클래스이 맴버와 접근성을 가능한 좀혀야 - public일 필요가 없는 클래스의 접근 수준을 최대한 낮춰야 - 리스코프 치환 원칙 : 상위 클래스의 인스턴스는 하위 클래스의 인스턴스로 대체해 사용할 수 있어야 - 즉, 상위 클래스의 메서드를 정의할 때는 그 접근 수준을 상위 클래스에서보다 좁게 설정할 수 없다 - public 클래스의 인스턴스 필드는 되도록 public이 아니어야 - public을 가변 필드로 갖는 클래스는 일반적으로 스레드에 안전하지 않음 - 정적 필드도 마찬가지이나, 상수라면 public static final 필드로 공개해도 좋음 - 길이가 0..
2023.04.06