Java

자바 연습 (추상 클래스)

이무쿤 2019. 10. 27. 22:17
반응형

 

 

public abstract class Car {


public abstract void drive();
public abstract void stop();

public abstract void start();

    public abstract void turnoff(); 
    
    final public void run()
    {
     start();
     drive();
     stop();
     turnoff();
    
    }


}

 

public class Avante extends Car{

@Override
public void drive() {
// TODO Auto-generated method stub
System.out.println("아반타 주행시작");

}

@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("아반타 정지");
}

@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("아반타 시동");
}

@Override
public void turnoff() {
// TODO Auto-generated method stub
System.out.println("아반타 시동해제");
}

}

 

public class Genesis extends Car{

@Override
public void drive() {
// TODO Auto-generated method stub
System.out.println("제네시스 주행시작");

}

@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("제네시스 정지");
}

@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("제네시스 시동");
}

@Override
public void turnoff() {
// TODO Auto-generated method stub
System.out.println("제네시스 시동해제");
}

}

 

public class Genesis extends Car{

@Override
public void drive() {
// TODO Auto-generated method stub
System.out.println("제네시스 주행시작");

}

@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("제네시스 정지");
}

@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("제네시스 시동");
}

@Override
public void turnoff() {
// TODO Auto-generated method stub
System.out.println("제네시스 시동해제");
}

}

 

public class Sonata extends Car{

@Override
public void drive() {
// TODO Auto-generated method stub
System.out.println("소나타 주행시작");

}

@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("소나타 정지");
}

@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("소나타 시동");
}

@Override
public void turnoff() {
// TODO Auto-generated method stub
System.out.println("소나타 시동해제");
}



}

 

 

public class Main {

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

ArrayList list = new ArrayList<>();

list.add(new Avante());
list.add(new Genesis());
list.add(new Grandeur());
list.add(new Sonata());


for(Car c : list)
{
c.run();
}


}

}

 

반응형