<aside> 💡 하나의 소스 파일안에 여러개의 클래스를 지정할 경우 하나의 클래스만 public으로 선언 되어야 함

</aside>

예제 1번

DaskLamp 클래스

package ex04;

public class DeskLamp {
    //인스턴스 변수 정의
    private boolean isOn; //켜짐이나 꺼짐과 같은 램프의 상태

    //메소드 정의
    public void turnOn() {
        isOn = true;
    }

    public void turnOff() {
        isOn = false;
    }

    public String toString() {
        return "현재 상태는" + (isOn == true ? "켜짐" : "꺼짐");
    }
}

DaskLamp 사용

package ex04;

public class DeskLampTest {
    public static void main(String[] args) {
        //객체를 사용하려면 new 예약어를 사용한다.
        DeskLamp myLamp = new DeskLamp();

        //객체의 메소드를 호출하려면 도트 연산자인 .을 사용한다.
        myLamp.turnOn();
        System.out.println(myLamp);
        myLamp.turnOff();
        System.out.println(myLamp);
    }
}
현재 상태는켜짐
현재 상태는꺼짐

예제 2번

package ex04;

class Box {
    int width;
    int length;
    int height;
    double getVoume() {
        return (double) width * length * height;
    }
}

public class BoxTest {
    public static void main(String[] args) {
        Box b;
        b = new Box();
        b.width = 20;
        b.length = 20;
        b.height = 30;
        System.out.println("상자의 가로, 세로, 높이는 " + b.width + ", " +
                b.length + ", " + b.height + "입니다.");
        System.out.println("상자의 부피는 " + b.getVoume() + "입니다.");
    }
}

Untitled

예제 3번

package ex04;

public class Television {
    int channel;
    int volume;
    boolean ofOff;

    public static void main(String[] args) {
        Television myTv = new Television();
        myTv.channel = 7;
        myTv.volume = 10;
        myTv.ofOff = true;
        
        Television yourTv = new Television();
        yourTv.channel = 9;
        yourTv.volume = 12;
        yourTv.ofOff = true;
        
        System.out.println("나의 텔레비전의 채널은 " + myTv.channel + "이고 볼륨은 "
                + myTv.volume + "입니다.");

        System.out.println("너의 텔레비전의 채널은 " + yourTv.channel + "이고 볼륨은 "
                + yourTv.volume + "입니다.");
    }
}
나의 텔레비전의 채널은 7이고 볼륨은 10입니다.
너의 텔레비전의 채널은 9이고 볼륨은 12입니다.

<aside> 💡 myTv와 yourTv의 데이터는 서로 완전히 분리되어 있음.

</aside>