java 定义交通工具(继承)

简介: zhe

定义一个交通工具类(Vehicles),该类的属性为:商标(brand)、颜色(color);

方法:run 方法(行驶功能,控制台输出“车已经启动”)、showInfo(显示信息,控制台输出商 标和颜色)

需求:
1)   编写一个小汽车类(Car)继承于 Vehicles 类,添加属性座位(seats);成员方法 showCar(显示小 汽车的所有信息)
2)   编写一个卡车类(Truck)继承于 Vehicles 类,添加属性载重(load);成员方法 showTruck(显示卡 车的所有信息)
3)   定义测试类,分别创建 Car 对象和 Truck 对象,控制台打印输出的信息如下: 商标:奔驰,颜色:白色,座位:5 商标:福田,颜色:红色,载重:6.5 吨

//定义交通工具类publicclassVehicles {
//定义属性:商标privateStringbrand;
//定义属性:颜色privateStringcolor;
//空构造方法publicVehicles() {
    }
//带参构造方法publicVehicles(Stringbrand, Stringcolor) {
this.brand=brand;
this.color=color;
    }
//set,get方法publicStringgetBrand() {
returnbrand;
    }
publicvoidsetBrand(Stringbrand) {
this.brand=brand;
    }
publicStringgetColor() {
returncolor;
    }
publicvoidsetColor(Stringcolor) {
this.color=color;
    }
//run 方法:行驶功能,控制台输出“车已经启动publicvoidrun() {
System.out.println("车辆已经启动");
    }
//showInfo方法:显示信息,控制台输出商 标和颜色publicvoidshowinfo() {
System.out.println(brand+"  "+color);
    }
}

编写一个小汽车类(Car)继承于 Vehicles 类,添加属性座位(seats);成员方法 showCar(显示小 汽车的所有信息)

//car类publicclassCarextendsVehicles{
//定义属性:setprivateStringsets;
//带参构造方法publicCar(Stringbrand, Stringcolor, Stringsets) {
super(brand, color);
this.sets=sets;
    }
//publicStringgetSets() {
returnsets;
    }
publicvoidsetSets(Stringsets) {
this.sets=sets;
    }
publicvoidshowCar(){
System.out.println("商标:"+getBrand()+","+"颜色:"+getColor()+","+"座位:"+getSets()+"座");
    }
}

编写一个卡车类(Truck)继承于 Vehicles 类,添加属性载重(load);成员方法 showTruck(显示卡 车的所有信息)

//定义卡车类publicclassTruckextendsVehicles{
//添加属性:loadprivateStringload;
//无参构造方法publicTruck(){
    }
//带参构造方法publicTruck(Stringbrand, Stringcolor, Stringload) {
super(brand, color);
this.load=load;
    }
//set,get构造方法publicStringgetLoad() {
returnload;
    }
publicvoidsetLoad(Stringload) {
this.load=load;
    }
//showTruck方法publicvoidshowTurck(){
System.out.println("商标:"+getBrand() +","+"颜色:"+getColor() +","+"载重:"+getLoad());
    }
}

定义测试类,分别创建 Car 对象和 Truck 对象,控制台打印输出的信息如下: 商标:奔驰,颜色:白色,座位:5 商标:福田,颜色:红色,载重:6.5 吨

//main主方法入口publicstaticvoidmain(String[] args) {
Carcar=newCar("奔驰","白色","5");
car.showCar();
Trucktruck=newTruck("福田","红色","6.5吨");
truck.showTurck();
目录
相关文章
|
1月前
|
Java 编译器
Java重复定义变量详解
这段对话讨论了Java中变量作用域和重复定义的问题。学生提问为何不能重复定义变量导致编译错误,老师通过多个示例解释了编译器如何区分不同作用域内的变量,包括局部变量、成员变量和静态变量,并说明了使用`this`关键字和类名来区分变量的方法。最终,学生理解了编译器在逻辑层面检查变量定义的问题。
Java重复定义变量详解
|
29天前
|
Java
在Java中,接口之间可以继承吗?
接口继承是一种重要的机制,它允许一个接口从另一个或多个接口继承方法和常量。
81 1
|
2月前
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
27 3
|
2月前
|
Java
在Java多线程编程中,实现Runnable接口通常优于继承Thread类
【10月更文挑战第20天】在Java多线程编程中,实现Runnable接口通常优于继承Thread类。原因包括:1) Java只支持单继承,实现接口不受此限制;2) Runnable接口便于代码复用和线程池管理;3) 分离任务与线程,提高灵活性。因此,实现Runnable接口是更佳选择。
51 2
|
2月前
|
Java
Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口
【10月更文挑战第20天】《JAVA多线程深度解析:线程的创建之路》介绍了Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口。文章详细讲解了每种方式的实现方法、优缺点及适用场景,帮助读者更好地理解和掌握多线程编程技术,为复杂任务的高效处理奠定基础。
38 2
|
2月前
|
Java 开发者
Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点
【10月更文挑战第20天】Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点,重点解析为何实现Runnable接口更具灵活性、资源共享及易于管理的优势。
45 1
|
1月前
|
Java
在Java中定义一个不做事且没有参数的构造方法的作用
Java程序在执行子类的构造方法之前,如果没有用super()来调用父类特定的构造方法,则会调用父类中“没有参数的构造方法”。因此,如果父类中只定义了有参数的构造方法,而在子类的构造方法中又没有用super()来调用父类中特定的构造方法,则编译时将发生错误,因为Java程序在父类中找不到没有参数的构造方法可供执行。解决办法是在父类里加上一个不做事且没有参数的构造方法。
|
2月前
|
Oracle Java 关系型数据库
重新定义 Java 对象相等性
本文探讨了Java中的对象相等性问题,包括自反性、对称性、传递性和一致性等原则,并通过LaptopCharger类的例子展示了引用相等与内容相等的区别。文章还介绍了如何通过重写`equals`方法和使用`Comparator`接口来实现更复杂的相等度量,以满足特定的业务需求。
31 3
|
2月前
|
Java 测试技术 编译器
Java零基础-继承详解!
【10月更文挑战第4天】Java零基础教学篇,手把手实践教学!
44 2
|
2月前
|
Java 编译器
在Java中,关于final、static关键字与方法的重写和继承【易错点】
在Java中,关于final、static关键字与方法的重写和继承【易错点】
28 5