9.1 중첩 클래스중첩 클래스: 클래스 내부에 선언한 클래스 멤버 클래스: 클래스의 멤버로서 선언되는 중첩 클래스로컬 클래스: 메소드 내부 선언되는 중첩 클래스특정 클래스만 관계를 맺을 경우에는 중첩 클래스로 선언하는 것이 유지보수에 도움이 된다.클래스의 멤버를 쉽게 사용할 수 있음코드의 복잡성을 줄일 수 있음컴파일하면 바이트코드 파일이 생성9.2 인스턴스 멤버 클래스바깥 클래스에서만 사용되기 때문에 내부 클래스는 주로 private접근 제한을 갖는 것이 일반적바깥 클래스 어디에서나 생성할 수는 없고 인스턴스 필드값, 생성자, 인스턴스 메소드에서 생성할 수 있음왜냐면 바깥 클래스 객체가 있어야 내부 클래스 객체도 생성할 수 있기 때문이다내부 클래스를 바깥 클래스 외부에 생성하기 위해서는 바깥 클래스를 먼..
8.1 인터페이스 역할인터페이스는 두 객체를 연결하는 역할사용되는 객체만을 변경하여 다양한 실행 결과를 얻을 수 있도록 함 = 다형성 구현에 주된 기술로 이용 8.2 인터페이스와 구현 클래스 선언인터페이스 선언interface 인터페이스 이름 { }public interface 인터페이스 이름 { // 상수 필드 // 추상 메소드 // 디폴드 메소드 // 정적 메소드 // private 메소드} 구현 클래스 선언// 인터페이스interface AInter { void turnOn();}// 인터페이스를 구현한 객체// 인터페이스의 추상 메소드를 재정의한 메소드가 있음class BClass implements AInter { void turnOn(){ /..
7.1 상속 개념부모 클래스의 필드와 메소드를 자식 클래스에게 물려줄 수 있음잘 개발된 클래스를 재사요해서 새로운 클래스를 만들기 때문에 중복 코드를 줄일 수 있음부모 클래스만 수정하면 되기 때문에 수정을 최소화할 수 있음 7.2 클래스 상속자식이 상속 받으려고 하는 부모 클래스를 선택다중 상속을 허용하지 않음 7.3 부모 생성자 호출자식 객체를 생성하면 부모 객체가 먼저 생성된 다음에 자식 객체가 생성 된다.부모 생성자는 자식 생성자의 맨 첫줄에 숨겨져 있는 super() 에 의해 호출된다. public class SmartPhoneDemo { public static void main(String[] args) { SmartPhone smartPhone = new SmartPhone..