728x90
반응형
728x90
반응형
인터페이스 특징: abstract의 클래스는 interface로 변경이 가능하다 interface는 다수의 상속이 가능하다 interface는 interface끼리의 상속이 가능하다. 이 때 interface끼리의 상속은 extends를 사용한다. interface로 바꾸는 경우는 다형성 + extends대신 implements를 사용하여 상속한다. interface로 선언을 해주는 경우는 기능에 대한 팀원과의 분업 혹은 회사간의 분업으로 인한 특정 기능이 공유되어야 할 때 사용된다. 인터페이스를 상속받은 클래스는 반드시 그 메서드를 구현해야 한다. 인터페이스를 통한 기능의 구현 후 main 메서드 안에서 실행하는 예제 회사 내의 1)회사원의 이름과 사원번호를 받아서 저장해주는 메서드와 2)저장받은 메서..
인터페이스 default & static 만약 interface에 추상메서드를 추가하면 다른 interface의 메서드를 쓰는 클래스에 추가된 추상메서드를 전부 선언해야하는 불편함이 있다. 따라서 default값을 넣고 {} 중괄호를 붙여 선언하면 원하는 클래스에만 그 추상메서드를 선언할 수 있다 중괄호를 선언해서 몸통을 만들었기 때문에 생기는 문제점 2가지 여러 인터페이스 디폴트 메서드간의 충돌 이 경우 인터페이스를 구현한 클래스에서 디폴트 메서드를 오버라이딩 해야한다. 디폴트 메서드와 조상 클래스 메서드간의 충돌 이 경우 조상 클래스의 메서드가 상속되고 디폴트 메서드는 무시된다. class methodtest implements iftest{ public void method() { } } class..
인터페이스 정의: 추상메서드의 집합 구현된 것이 전혀 없는 설계도 껍데기 모든 멤버가 public static final & public abstract이여야 함 따라서 public static final과 public abstract는 인터페이스 내에서 생략이 가능하다 추상메서드와 인터페이스의 차이점 추상메서드는 생성자, IV, 추상메서드를 가지고 있지만 인터페이스는 찐으로 아무것도 없는 빈 깡통 IV의 보유 여부로 판별 가능 = 인터페이스 IV 없음, 추상 메서드 IV 존재 다만 상수는 가질 수 있음 = final 인터페이스 선언하는 법 클래스와 동일하게 생성 위의 설명과 같이 앞의 public static final 은 interface에서 필수로 적용되야하기 때문에 생략이 가능하다 interfac..