인터페이스란
- 표준명세서의 역활
- 상수와 추상메소드만 존재(abstract는 생략가능)
- interface를 implements 한 클래스는 반드시 추상메소드를 Override(재구현)해주어야 한다.
- Override(재구현) 할때 반드시 public를 붙여야 한다.
- 다중상속이 가능
- 상속과 같이 쓰일때는 extends, implements 순서로 쓴다.
extends(상속)와 interface(인터페이스) 사용 차이점
1. class B extends A{} //참 : 클래스끼리는 extends가 가능하다
2. class B implements InterA{} //참 : 인터페이스는 클래스에 implements가 가능하다
3. class B implements A{} //거짓 : 클래스끼리는 implements 할 수 없다
4. class B extends InterA{} //거짓 : 인터페이스는 클래스에 extends 할 수 없다
5. interface InterB extends A{} //거짓 : 클래스는 인터페이스에 extends 할 수 없다
6. interface InterB implements InterA{} //거짓 : 인터페이스끼리는 implements 할 수 없다
7. interface InterB implements A{} //거짓 : 클래스는 인터페이스에 implements 할 수 없다
8. interface InterB extends InterA{} //참 : 인터페이스끼리는 extends가 가능하다
Interface(인터페이스)
2011. 9. 28. 01:10
객체지향 프로그램의 5가지 특징
2011. 9. 26. 18:24
은닉화
: 자바 클래스를 접근하고자 하는 개발자나 사용자로 부터 자바 클래스를 보호(숨김) 시키는 것이다.
사용자에게는 잘못된 데이터 입력을 방지하고 개발자로부터 필요 없는 정보를 숨겨준다.
캡슐화
: 데이터와 함수 등 객체와 관련된 것들을 하나로 묶는 것을 말한다. 흔히 정보 은닉과 함께
연관지어 사용되는 개념으로 외부에서 알 필요가 없는 데이터와 행위는 보이지 않게 한다.
상속
: 클래스의 기능을 확장하는 여러방법 중 하나로, 기존 클래스를 수정하지 않으면서도 이미 정의되어
있는 내용을 확장해서 사용할 수 있는 방법을 제공하는 것을 말한다.
예를 들어 자동차라는 클래스을 A가 상속하여 기능을 추가하고 택시 클래스로 정의하는 것을 말한다.
다형성
: 오버로딩, 오버라이딩, 상속 등을 복합적으로 사용함으로써 하나로 여러가지 처리를 하는 것을 말한다.
예를 들어 오버로딩은 하나의 메서드가 여러가지 기능을 포함하고 있는 것을 다형성이라 한다.
추상화
: 인터페이스와 구현을 분리하는 것을 말한다. 추상화를 통해 객체가 가진 특성 중 필수 속성만으로 객체를
묘사하고 유사성만을 표현하며 세부적인 상세 사항은 각 객체에 따라 다르게 수현되도록 할 수 있다.
상속
- Interface(인터페이스) 2011.09.28
- 객체지향 프로그램의 5가지 특징 2011.09.26