MapleStory Finger Point
본문 바로가기
Back-end/Java

[Java] 혼자 공부하는 자바 421~423p 풀어보기

by 디팔⸜( ◜࿁◝ )⸝︎︎ 2022. 10. 4.

3번 문제

바깥 클래스에서 멤버 클래스의 객체 생성하기(인스턴스 멤버클래스, 정적 멤버클래스의 각각 차이점)

- 인스턴스 : 객체 생성 후 멤버 클래스 객체 생성 가능

- 정적 : 객체 생성 없이 바로 접근하여 멤버 클래스 객체 생성 가능

public class App {
    public static void main(String[] args){
        Car myCar = new Car();
        Car.Tire tire = myCar.new Tire();
        Car.Engine engine = new Car.Engine();
    }
}

class Car {
    class Tire {
    }

    static class Engine {
    }
}

 

5번 문제 

중첩 인터페이스 활용 문제

public class App {
    public static void main(String[] args){
    CheckBox checkBox = new CheckBox();
    checkBox.setOnSelectListener(new BackgroundChangeListener());
    checkBox.select();    
    }

}

class CheckBox{
    OnSelectListener listener;

    void setOnSelectListener (OnSelectListener listener){
        this.listener = listener;
    }

    void select(){
        listener.onSelect();
    }

    static interface OnSelectListener{
        void onSelect();
    }
}

class BackgroundChangeListener implements CheckBox.OnSelectListener{
    public void onSelect(){
        System.out.println("배경을 변경합니다.");
    }

}

댓글