5-2出租 家用轿车 练习,麻烦老师看看,谢谢
package com.x.auto;
public class Car {
// 属性:车的颜色color、车主姓名userName
private String color;
private String userName;
public Car() {
}
// 带参构造函数(参数为color和useName)
public Car(String colorl, String userNamel) {
this.setColor(colorl);
this.setUserName(userNamel);
}
// 通过封装实现对私有属性的get/set操作
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
// 创建无参无返回值得方法use(描述内容为:我是机动车!)
public void use() {
System.out.println("我是自走神兽!");
}
// 重写equals方法,比较两个对象是否相等(比较color,userName)
@Override
public boolean equals(Object obj) {
// TODO Auto-generated method stub
Car temp = (Car) obj;
if (this.getUserName().equals(temp.getUserName()) && this.getColor() == temp.getColor()) {
return true;
} else
return false;
}
}
public final class HomeCar extends Car {
// 私有属性:载客数(num)
private int num;
public HomeCar() {
}
// 带参构造方法为所有属性赋值
public HomeCar(String Color, String User, int Num) {
super(Color, User);
this.setNum(Num);
}
// 通过封装实现对私有属性的get/set操作
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
// 创建无参无返回值的display方法,表现为:**拥有的**颜色的私家车,有**座位
public void display() {
System.out.println(this.getUserName() + "拥有的" + this.getColor() + "颜色的私家车,有" + this.getNum() + "座位");
}
// 重载display方法(带参数num),描述为:家用汽车大多有**个座位
public void display(int Num){
System.out.println("家用车大多有"+this.getNum()+"个座位");
}
}
public class Taxi extends Car {
// 私有属性:所属公司( company)
private String company;
public Taxi() {
}
// 调用父类的构造方法,完成属性赋值
public Taxi(String Color, String Name, String Company) {
super(Color, Name);
this.setCompany(Company);
}
// 通过封装实现对私有属性的get/set操作
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
// 创建不允许重写的ride方法,描述为:**出租车是所属于***公司的。
public final void ride() {
System.out.println(this.getUserName() + "的出租车是所属于" + this.getCompany());
}
// 重写父类use方法,描述为:出租车是提高市民生活质量的重要条件之一
@Override
public void use() {
// TODO Auto-generated method stub
System.out.println("出租车是城市的祸害");
}
// 重写toString方法,输出的表现形式不同(输出color,userName)
@Override
public String toString() {
// TODO Auto-generated method stub
return this.getUserName()+"拥有的是一辆"+this.getColor()+"的出租车";
}
}
public class Test {
public static void main(String[] args) {
// 实例化父类对象,并传入两组相同的属性值
Car car1 = new Car("绿色", "老王");
Car car2 = new Car("绿色", "老王");
// 调用父类use方法
car1.use();
// 通过重写equals方法,比较两个对象是否相等
if (car1.equals(car2)) {
System.out.println("同型号四脚兽");
} else
System.out.println("杠杠不同哈");
System.out.println("==================================");
// 实例化子类Taxi对象,并传入属性值
Taxi ta = new Taxi("白色", "刘麻子", "上路没公司");
// 调用ride和use方法
ta.ride();
ta.use();
// 输出重写toString后的taxi信息
System.out.println(ta.toString());
System.out.println("==================================");
// 实例化子类HomeCar对象,并传入属性值
HomeCar hc = new HomeCar("透明", "大头", 919);
hc.display();
// 调用display方法及它的重载方法
}
}128
收起
正在回答
1回答
依然没毛病哦。渐入佳境哦。妥妥的。注释都写这么多。说到注释,方法的注释推荐使用文档注释哦(/** 注释 **/),那样的话,我们在main里调用方法时鼠标放到上面就可以看到我们写的注释喽。
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星