자바 인터페이스 요약 정리
IT Study/Java2014. 11. 25. 19:29
자바의 정석 참고
엔지니어..
홍만이 그림을 그려야 하는데 혼자 그리긴 벅차다..
그래서 A사에 맡기려고 한다.
개발자들의 편의를 도와줌..
자바는 다중상속이 안된다..
c++는 다중상속 가능 프로그래머들에게 자유를 주기 위해서 가능하다고 이야기 한다.
아키텍터들은 다중상속이 불필요하다고 이야기 한다.
자바입장에서 다중상속의 효과가 필요하다.
문제의 상황
이름과 주민등록 번호를 저장하는 기능의 클래스가 필요하다.
이 클래스에는 주민등록 번호를 기반으로 사람의 이름을 찾는 기능이 포함되어야 한다.
(어떤 기능의 일부가 필요하다.)
주민등록번호와 이름의 저장 void addPersonalInfo(String perNum, String name)
A 사에게 요구..
주민등록번호를 이용한 검색 String searchName(String Name)
놀수는 없으므로 뭔가를 해야겠다고 생각..
클래스를 하나 정의해야 겠다. 그리고 A사에는 이 클래스를 상속해서 기능을 완성해 달라고 요구하고, 난 이 클래스를 기준으로 프로젝트를 진행해야 겠다.
홍만군의 결과물 ------------------------------------- A사의 결과물
PersonalNumberStorage Class(다리 역활)
인터페이스의 정의란 매우 중요한것이다.
인터페이스는 상속한다고 하지 않고 구현한다고 한다.
여러개를 상속가능하다..
인터페이스 내에도 변수선언이 가능.. 무조건 public static final로 선언이
되므로 이 둘은 완전히 동일한 의미를 갖는다.
ex )
public class week
{
public static final int MON = 1;
public static final int TUE = 2;
public static final int WED = 3;
public static final int THU = 4;
public static final int FRI = 5;
public static final int SAT = 6;
public static final int SUN = 7;
}
위의 예제를 밑에처럼 줄여주는게 인터페이스의 기능이다.
public interface Week
{
int MON=1, TUE=2, WED=3, THU=4, FRI=5, SAT=6, SUN=7;
}
enum = 열거형 , 어려울 수도 있으므로 Class 부록으로 빼버림... 자바 5.0에서 추가된 것..
자바 interface의 또 다른 가치
Upper가 비어있어도 주소를 참조할 수 있다..
구현한다고 표현만 해둬라.. Marker의 역할.. 이런 경우
인터페이스의 이름은 ~able로 끝나는 것이 보통이다.(표준)
실제로는 인터페이스를 통해서 다중 상속을 하는 것 같이 표현이 되고 있다.
'IT Study > Java' 카테고리의 다른 글
자바 리눅스 루프백 아이피를 알아내는 방법 (0) | 2014.11.28 |
---|---|
스트럿츠 프레임워크 (0) | 2014.11.25 |
재귀 호출 (0) | 2012.10.02 |