Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- abstract class Plane
- {
- protected int memberID = 0; //protected inseamna ca si subclasele au acces la ele, nu mai ai nevoie de functie
- private int EnginePower;
- protected static int counter = 0;
- public Plane(int EnginePower)
- {
- this.EnginePower = EnginePower;
- this.counter++;
- this.memberID = counter;
- }
- public String GetPlaneID()
- {
- return String.valueOf(memberID);
- }
- public int getTotalEnginePower()
- {
- return EnginePower;
- }
- public void takeOff()
- {
- System.out.println(this.memberID + " takeOff!\n");
- }
- public void land()
- {
- System.out.println(this.memberID + " land!\n");
- }
- public void fly()
- {
- System.out.println(this.memberID + " fly!\n");
- }
- }
- //---------------------------------------------------------------
- abstract class Passenger extends Plane
- {
- private int maxPassengers;
- public Passenger (int maxPassengers, int EnginePower)
- {
- super(EnginePower); //super takes the information to the super class, so it goes back to Plane
- this.maxPassengers = maxPassengers;
- }
- public int getMaxPassengers()
- {
- return maxPassengers;
- }
- }
- class Concorde extends Passenger
- {
- public Concorde(int maxPassengers, int EnginePower)
- {
- super(maxPassengers, EnginePower); //goes back to Passenger
- }
- public void goSuperSonic()
- {
- System.out.println(this.memberID + " Supersonic mode activated!\n");
- }
- public void goSubSonic()
- {
- System.out.println(this.memberID + " Supersonic mode deactivated!\n");
- }
- }
- class Boeing extends Passenger
- {
- public Boeing(int maxPassengers, int EnginePower)
- {
- super(maxPassengers, EnginePower);
- }
- }
- //---------------------------------------------------------------
- abstract class Fighter extends Plane
- {
- public Fighter(int EnginePower)
- {
- super(EnginePower);
- }
- public void launchMissile()
- {
- System.out.println(this.memberID + " Launching rocket!\n");
- }
- }
- class MIG extends Fighter
- {
- public MIG(int EnginePower)
- {
- super(EnginePower);
- }
- public void highSpeedGeometry()
- {
- System.out.println(this.memberID + " High speed selected geometry!\n");
- }
- public void normalGeometry()
- {
- System.out.println(this.memberID + " Normal selected geometry!\n");
- }
- }
- class TomCat extends Fighter
- {
- public TomCat(int EnginePower)
- {
- super(EnginePower);
- }
- public void refuel()
- {
- System.out.println(this.memberID + " TomCat - Refuelling!\n");
- }
- }
- //---------------------------------------------------------------
- class Main
- {
- public static void main(String args[])
- {
- Plane p1, p2, p3, p4;
- p1 = new Concorde(10, 1000);
- p2 = new Boeing(5, 500);
- p3 = new MIG(2000);
- p4 = new TomCat(1500);
- ((Concorde)p1).goSuperSonic();
- ((Concorde)p1).goSubSonic();
- ((Concorde)p1).takeOff();
- ((Boeing)p2).land();
- ((MIG)p3).land();
- ((TomCat)p4).refuel();
- ((TomCat)p4).launchMissile();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement