请创建一个 Car 抽象类,要求有 brand (品牌)属性,并且要求封装私有化,写出属性的 setter 与 getter 方法。抽象类 Car 构造方法中也可以对 brand 属性赋值,定义抽象方法 run() 。
创建一个跑车类 SportsCar ,继承抽象类 Car 。实现 Car 抽象方法输出一条语句“超级跑车”,在本类中写出一个自己的方法 price() ,输出一条语句“售价100w”。
在测试类 Test 类中创建跑车对象 car1 ,用构造器赋值品牌属性,输出属性,调用 run() 、 price() 方 法。创建跑车 car2 ,用 set 方法赋值属性,输出属性,调用 run() 、 price() 方法。
效果:
代码:
abstract class Car {
private String brand;
public Car(String brand) {
this.brand = brand;
}
public String getBrand() {
return brand;
}
// brand属性的setter方法
public void setBrand(String brand) {
this.brand = brand;
}
public abstract void run();
}
class SportsCar extends Car {
public SportsCar(String brand) {
super(brand);
}
public void run() {
System.out.println("超级跑车");
}
public void price() {
System.out.println("售价100W");
}
}
class Test {
public static void main(String[] args) {
// 使用构造器赋值品牌属性创建跑车对象car1
SportsCar car1 = new SportsCar("法拉利");
System.out.println(car1.getBrand());
car1.run();
car1.price();
// 使用set方法赋值属性创建跑车对象car2
SportsCar car2 = new SportsCar("");
car2.setBrand("兰博基尼");
System.out.println(car2.getBrand());
car2.run();
car2.price();
}
}