您的位置:首页 > 其它

生活中面向对象的实例

2015-09-23 18:01 295 查看
//父类

package Demo_OOP;

public class Vehicle {

private String name;
private String type;
private String color;
public Vehicle(String myName, String myType, String myColor){
          name =myName;
          type =myType;
          color=myColor;
}
public String getName(){
return this.name;
}
public String getType(){
return this.type;
}
public String getColor(){
return this.color;
}
public void start(){
System.out.println(" 启动");
}
public void transport(){
System.out.println("运输");
}
public void carry(){
System.out.println("载人");
}
}

//两个子类

package Demo_OOP;

public class RoadVehicle extends Vehicle{
private String wheel;
private String brand;
public RoadVehicle(String mywheel,String mybrand, String myName,String myType,String myColor){
super (myName, myType, myColor);   //调用父类构造函数
wheel=mywheel;
brand=mybrand;
}
public void runload(){
System.out.println("我能在陆地行驶");
}

}

package Demo_OOP;

public class SeaVehicle extends Vehicle{

    private String bigVolume;
public SeaVehicle (String bigVolume,String myBigVolume,String myName,String myType,String myColor){
super(myName,myType,myColor);//显示调用父类的构造函数
bigVolume=myBigVolume;
}
public void runSea(){
System.out.println("我这么大的"+this.bigVolume+"可以在海里自由行驶");

}
public void carryCar(){
System.out.println("我能"+this.bigVolume+"你能吗!");

}

}

package Demo_OOP;

public class SeaVehicle extends Vehicle{

    private String bigVolume;
public SeaVehicle (String bigVolume,String myBigVolume,String myName,String myType,String myColor){
super(myName,myType,myColor);//显示调用父类的构造函数
bigVolume=myBigVolume;
}
public void runSea(){
System.out.println("我这么大的"+this.bigVolume+"可以在海里自由行驶");

}
public void carryCar(){
System.out.println("我能"+this.bigVolume+"你能吗!");

}

}

//子类作为父类,子类下的派生类

package Demo_OOP;

class Bus extends RoadVehicle implements EngineDriven{
private String PunchCard;//打卡
private String Gas;//用汽油
public Bus(String myPunchCard,String myGas,String mywheel,String mybrand, String myName,String myType,String myColor){
super(mywheel,mybrand,myName,myType,myColor);
myPunchCard=PunchCard;
myGas=Gas;
}
 public String getName(){
return super.getName();
 }
public void runLoad(){//调用父类方法
System.out.println("我只能在陆地行驶");

}
public void energy(){//重写接口的方法
System.out.println("我是机动车");
}

}

package Demo_OOP;

public class Train extends RoadVehicle implements EngineDriven {
String Length;   //火车长度
String Fuel;    //火车所用燃料
public Train(String myLength,String myFuel,String mywheel,String mybrand, String myName,String myType,String myColor){
super(mywheel,mybrand,myName,myType,myColor);     //调用父类构造函数
   myLength=Length;
   myFuel=Fuel;
}

public String getName(){
return super.getName();
}

 

  

   public  void runroad(){                //继承父累的方法
 System.out.println("我行驶在地面,但依靠铁轨"); 

   }

   public void energy(){
  System.out.println("我是机动车,我靠能源形势");
  

   }

   

}

package Demo_OOP;

public class Bicycle extends RoadVehicle{
private String Prdal;//脚踏

//调用父类函数
public Bicycle(String Prdal, String mywheel, String mybrand, String myName, String myType, String myColor){
super(mywheel,  mybrand,  myName, myType, myColor);
Prdal = mybrand;

}
//重写父类方法
public String getName(){
return super.getName();
}
//重写父类方法
public void getWheel(){
System.out.println("我有两个轮子");
}

<
4000
span style="white-space:pre;">public  void Runroad(){                
 
  }

}

//接口

package Demo_OOP;

public interface EngineDriven {
public void energy();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: