JAVA/코드

2022_10_06 연습 04 MainClass&Phone&DmbPhone (상속)

0304호 2022. 10. 6. 17:08

상속 연습 2

MainClass 

package quiz03;

public class MainClass {

	public static void main(String[] args) {
		
		//Dmb폰 객체 생성
		DmbPhone dp = new DmbPhone("햅틱", "메탈그레이", 10);

		//Phone클래스에서 상속받은 멤버 변수에 접근
		System.out.println("모델: " + dp.model);
		System.out.println("색상: " + dp.color);
		//DmbPhone에서 선언한 멤버 변수에 접근
		System.out.println("채널: " + dp.channel);

		//Phone에서 상속받은 메서드 호출
		dp.powerOn();
		dp.ring();
		dp.sendVoice("여보세요??");
		dp.recieveVoice("안녕하세요? XX보험입니다.");
		dp.hangUp();

		//DmbPhone에서 선언한 메서드 호출
		dp.turnOnDmb(); //기능: TV를 켭니다 출력
		dp.changeChannel(7); //기능: channel변수를 전달받은 변수로 변경후 출력
		dp.turnOffDmb(); //기능: TV를 끕니다 출력
		dp.powerOff();


	}

}

Phone클래스 (부모클래스)

package quiz03;

public class Phone { //부모클래스
	
	String model;
	String color;
	
	void powerOn() {
		System.out.println("전원을 켭니다.");
	}
	
	void powerOff() {
		System.out.println("전원을 끕니다.");
	}
	
	void ring() {
		System.out.println("벨이 울립니다.");
	}
	
	void sendVoice(String message) {
		System.out.println("나: " + message);
	}
	
	void recieveVoice(String message) {
		System.out.println("상대방: " + message);
	}
	
	void hangUp() {
		System.out.println("전화를 끊습니다.");
	}
}

DmbPhone클래스 (자식클래스)

package quiz03;

public class DmbPhone extends Phone {
	//DmbPhone은 Phone클래스를 상속 받습니다.
	//channel 변수를 생성하고, color, model, channel을 초기화 하는 생성자를 작성하세요.
	//메인메서드가 정상적으로 실행되도록 메서드를 추가하세요.

	int channel;
	
		
	
	DmbPhone(String pmodel, String pcolor, int pchannel){
		model = pmodel;
		color = pcolor;
		channel = pchannel;
		
	}
	
	void turnOnDmb() {
		System.out.println("TV를 켭니다.");
	}

	void changeChannel(int a) {
		channel = a;
		System.out.println("채널 : " + channel);
	}
	
	
	void turnOffDmb() {
		System.out.println("TV를 끕니다.");
	}
	
	
	
}