상세 컨텐츠

본문 제목

자바 상속 출력

웹 개발 공부

by 이전중동직장인 2022. 8. 16. 14:41

본문

package aug16_Sample;

public class BoredGame extends Game {
	
	int peopleNum;
	
	//생성자
	//디폴트생성자
	
	public void BoardGame() {
		peopleNum =0;
	}
	
	
	//매개변수를 갖는 생성자
	public BoredGame (String gameTitle, int peopleNum) {
		super (gameTitle);
		this.peopleNum = peopleNum;
	}
	
	//메소드
	//슈퍼클래스와 동일한 메소드임으로 오버라이딩 한다 
	
	public void play() {
		System.out.println(peopleNum+"명이서 "+getGameTitle()+"을 시작합니다.");
	}

}
 

이렇게 만들어 봅시다. 

 

1. 부모클래스 

클래스 : Game
필드 : private String gameTitle
생성자 : 
Game() // gameTitle=“미정”
Game(String gameTitle)
// This.gameTitle=gameTitle;
메소드 : 
public String getGameTitle() {
return gameTitle} // 게임타이틀을 들고온다 Return 
public void play()  {system.out.printin();}
// gameTitle 게임을 시작합니다 출력

stop() //  gameTitle 게임을 멈춥니다 출력
end() // gameTitle 게임을 종료합니다 출력

 

package aug16_Sample;

public class Game {

	//필드 
	private String gameTitle ;
	
	//생성자
	// 디폴트 생성자 
	public Game()
	{
		gameTitle="미정";
	}
	
	//매개변수가 있는 생성자 
	
	public Game(String gameTitle) {
		this.gameTitle = gameTitle;
	}
	
	//메소드
	public String getGameTitle () {
		return gameTitle;
	}
	
	public void play() {
		System.out.println(getGameTitle() +  "게임을 시작합니다.");
	}
	
	public void stop() {
		System.out.println(getGameTitle() + "게임을 멈춥니다.");
	}
	public void end() {
		System.out.println(getGameTitle() + "게임을 종료합니다.");
	}
	
}

 

2. 자식 클래스 

클래스 : BoardGame

필드 : private int peopleNum

생성자 : BoardGame(), //peopleNum=0

BoardGame(String gameTitle, int peopleNum)

메소드 :

play()

// peopleNum명이서 gameTitle게임을 시작합니다

 

 

 

 

3. 출력 

 

package aug16_Sample;

public class gameTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Game game1=new Game("가위바위보");
		game1.play();
		game1.end();
		game1.stop();
		
		BoredGame boardGame = new BoredGame("야무치게 손병호",6);
		
		boardGame.play(); //메소드 오버라이딩으로 바뀐 내용 출력 
		boardGame.stop(); // 부모클래스의 내용 출력 
		boardGame.end();
		
	}

}

관련글 더보기

댓글 영역