JAVA

210817_Abstract+배열

요옫 2021. 8. 17. 16:31

abstract class Game{

abstract void play();  //게임시작

abstract void stop();  //게임종료

}

 

class Tom extends Game{

 

@Override

void play() {

System.out.println("Tom이 게임을 시작합니다");

}

 

@Override

void stop() {

System.out.println("Tom이 게임을 종료합니다");

}

}

 

class John extends Game{

 

@Override

void play() {

System.out.println("John이 게임을 시작합니다");

}

 

@Override

void stop() {

System.out.println("John이 게임을 종료합니다");

}

}

 

class Jane extends Game{

 

@Override

void play() {

System.out.println("Jane이 게임을 시작합니다");

}

 

@Override

void stop() {

System.out.println("Jane이 게임을 종료합니다");

}

}

 

public class ArrayInheriEx08 {

 

public static void main(String[] args) {

//배열로 출력

//각자의 클래스가 game을 상속받아서

//배열[3]

//for문

 

 

//배열 선언

Game[] game=new Game[3];

game[0]=new Tom();

game[1]=new John();

game[2]=new Jane();

 

//play에 관한 배열

for(int i=0;i<game.length;i++)

{

game[i].play();

}

 

System.out.println("-----------------");

 

//stop에 관한 배열

for(int i=game.length-1;i>=0;i--)

{

game[i].stop();

}

}

}

 

//결과

Tom이 게임을 시작합니다

John이 게임을 시작합니다

Jane이 게임을 시작합니다

-----------------

Jane이 게임을 종료합니다

John이 게임을 종료합니다

Tom이 게임을 종료합니다

'JAVA' 카테고리의 다른 글

210818_내부클래스  (0) 2021.08.18
210817_스캐너+다향성+switch  (0) 2021.08.17
210817_인터페이스+다형성  (0) 2021.08.17
210817_추상클래스+다형성  (0) 2021.08.17
210813_상속  (0) 2021.08.13