본문 바로가기

자바☕

12. 01 심화 강의 : 인터페이스

728x90

기본 원칙 : 모든 클래스와 멤버의 접근성을 가능한 좁혀야 한다

프로그램 요소의 접근성은 가능한 최소한으로 한다. 꼭 필요한 것만 골라 최소한의 Public API를 설계해야 한다. 그 외 클래스, 인터페이스, 멤버가 의도치 않게 API로 공개되는 일이 없도록(Public으로 선언되지 않도록) 해야한다.

public static final 필드가 참조하는 객체가 불변인지 확인해아 한다.

1. 인터페이스(추상 메서드의 집합)

인터페이스를 중개로 한 코드 통신의 접접. 통신 코드 간 규약 ~ 동시 개발 가능

  • 상수, 추상메서드만을 멤버로 가질 수 있다.

인터페이스의 멤버들은..

  • 모든 멤버변수는 public static final이어야 하며, 이를 생략할 수 있다.
  • 모든 메서드는 public abstract이어야 하며, 이를 생략할 수 있다.(static 메서드, 디폴트 메서드 예외)

cf)Static 메서드 : 헬퍼 또는 유틸리티 메서드를 제공할 때 사용 + Static 블록 작성 불가

 

다형성을 위해,

-> 상속 또는 인터페이스의 자동 타입변환(Promotion)

상위 인터페이스, 클래스, 추상 클래스로 업캐스팅 가능

! 모든 클래스는 extends Object가 생략

! 모든 클래스는 Object로 업캐스팅 가능

 

728x90