(1)定义一个Vehicle类并将它声明为抽象类。
属性:brand;
属性要进行封装(即为每条私有属性写set,get方法)
定义无参构造方法,和有参构造方法一个
重写toString()方法
重写equals()方法
在Vehicle类中声明一个NoOfWheels抽象方法,使它返回一个字符串值
(2)创建两个类Car和Motorbike从Vehicle类继承,并在这两个类中实现NoOfWheels方法。在Car类中,NoOfWheels方法返回“四轮车”信息;而在Motorbike类中,NoOfWheels方法返回“双轮车”信息。
(3)创建另一个带main方法的类,在该类中创建Car和Motorbike的实例,并在控制台中显示消息。
package java2.ch5;
//定义一个Vehicle类并将它声明为抽象类。
public abstract class Vehicle {
//成员变量brand;
private String brand;
//定义无参构造方法和有参构造方法
public Vehicle(){
}
public Vehicle(String brand){
this.brand = brand;
}
//set方法get方法
public void setBrand(String brand){
this.brand = brand;
}
public String getBrand(String brand){
return brand;
}
//重写toString()方法
public String toString(){
return brand;
}
//重写equals()方法
public boolean equals(Object object){
if(object==null){
return false;
}
if(this==object){
return true;
}
return false;
}
//声明一个NoOfWheels抽象方法
public abstract String NoOfWheels();
}
package java2.ch5;
//创建一个类Car从Vehicle类继承
public class Car extends Vehicle{
//实现NoOfWheels方法,返回“四轮车”信息
public String NoOfWheels(){
return "四轮车";
}
}
package java2.ch5;
//创建一个类Motorbike从Vehicle类继承
public class Motorbike extends Vehicle{
//实现NoOfWheels方法,返回“双轮车”信息
public String NoOfWheels(){
return "双轮车";
}
}
package java2.ch5;
//创建另一个带main方法的类
public class VehicleTest {
public static void main(String[] args){
//创建Car和Motorbike的实例
Vehicle v1 = new Car();
Vehicle v2 = new Motorbike();
//调用函数
System.out.println(v1.NoOfWheels());
System.out.println(v2.NoOfWheels());
}
}