객체지향 핵심
<aside> ☄️
설명
</aside>
예제
<aside> 📞
예제1
class의 필드와 메서드 정의
-------------------------
package oop1;
public class ValueObject {
int value;
void add() {
value++;
System.out.println("숫자 증가 :" + value);
}
}
main 함수
---------
package oop1;
public class ValueObjectMain {
public static void main(String[] args) {
ValueObject valueObject = new ValueObject();
valueObject.add(); //인스턴스에서 메소드 호출
valueObject.add(); //인스턴스에서 메소드 호출
valueObject.add(); //인스턴스에서 메소드 호출
System.out.println(valueObject.value);
}
}
출력
숫자 증가 :1
숫자 증가 :2
숫자 증가 :3
3


</aside>
완전 객체지향
<aside> 📞
예제
package oop1;
public class MusicPlayer {
int volume;
boolean isOn;
void on() {
isOn = true;
System.out.println("뮤직 플레이어 실행");
}
void off() {
isOn = false;
System.out.println("뮤직 플레이어 종료");
}
void volumeUp() {
volume++;
System.out.println("볼륨 증가 : " + volume);
}
void volumeDown() {
volume--;
System.out.println("볼륨 감소 : " + volume);
}
void showStatus() {
System.out.println("뮤직 플레이어 상태 확인");
if (isOn) {
System.out.println("뮤직 플레이어 On");
} else {
System.out.println("뮤직 플레이어 off");
}
}
}
----------------------------------------------------
package oop1;
public class MusicPlayer4 {
public static void main(String[] args) {
MusicPlayer musicPlayer = new MusicPlayer();
musicPlayer.on();
musicPlayer.volumeUp();
musicPlayer.volumeUp();
musicPlayer.off();
musicPlayer.showStatus();
System.out.println(musicPlayer.volume);
}
}
</aside>