개미의 개열시미 프로그래밍

[Java Programming 초급(2)] 7강. 인터페이스와 다형성 본문

Java

[Java Programming 초급(2)] 7강. 인터페이스와 다형성

YunHyeok 2022. 1. 2. 20:04
728x90
반응형

[인터페이스]

  • 상수와 추상 메서드 외에 다른 멤버를 갖지 못하게 함으로써 추상클래스보다 더욱 완벽한 추상화를 제공함
  • 사용이유 : is a관계가 아닌경우와 다중상속을 받고 싶은 경우

  • 자바에서 다중상속이 금지된 이유는 동일한 이름의 변수가 자식 클래스에 중복되어 상속되는 것을 막기 위해서이고 인터페이스는 변수를 가질 수 없는 특수한 클래스이므로 다중상속이 가능하게 된다.

 

[인터페이스 정의]

  • 인터페이스는 추상클래스와 유사하기 때문에 직접 객체화 되지 못한다.
  • 인터페이스의 상속(implements) -> 자식 클래스의 생성 -> 자식 클래스의 객체 생성 -> 프로그램의 사용
  • 인터페이스 사용 시 클래스와 동일하게 묵시적, 명시적 형변환이 가능하다.
  • 인터페이스 상속 - extend를 통해 상속

 

 

[자바 API 패키지]

  • 자바의 클래스들을 분류하고, 관련된 클래스와 인터페이스를 하나의 폴더에 적절하게 배치할 때 관련된 클래스들이 묶여 있는 폴더
  • 장점 : 관리가 용이, 같은 이름의 클래스를 사용할 때 이름의 충돌을 피할 수 있다.

 

 

[패키지의 개념]

  • 하나의 폴더에 동일한 이름의 파일 두개 저장 불가능
  • 자바는 객체지향 프로그램이기 때문에 시스템이 복잡해질수록 클래스 파일들도 상대적으로 많이 작성된다.
  • 기능과 용도가 다른 많은 클래스들이 모두 같은 폴더에 저장되어 있다면 관리상 어려움이 생긴다.

 

 

 [커스텀 라이브러리]

  • 자바는 프로그램 구현에 필요한 중요 클래스들을 API형태로 JVM에 포함
  • API에서 제공하지 않거나, API를 응용해서 개발자가 직접 만든 클래스들을 라이브러리 형태로 만들어서 사용할 수 있음
  • 비슷한 기능들을 간단하게 구현할 수 있으며, 다른 애플리케이션에서도 재사용이 가능함

 

 

 

728x90
반응형
Comments