java编程 这题怎么做 新手 死活做不出来

定义一个名为Vehicles(交通工具)的类,该类中应包含String类型的成员属性brand(商标)和color(颜色),
还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。
编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),
并编写构造方法。 编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),
还应增加成员方法showTruck(在控制台显示卡车的信息),并编写构造方法。 在main方法中测试以上各类。

提供以下代码供参考:

public class Main {
/*
在main方法中测试以上各类
*/
    public static void main(String[] args) {

        Vehicles v0 = new Vehicles("长城", "白色");
        v0.run();
        v0.showInfo();

        Car s1 = new Car("大众", "黑色");
        s1.run();
        s1.setSeate(4);
        s1.showCar();
        s1.showInfo();

        Truck s2 = new Truck("东风", "红色");
        s2.run();
        s2.setLoad((float)1995);
        s2.showTruck();
        s2.showInfo();

    }
}

/*
定义一个名为Vehicles(交通工具)的类,该类中应包含String类型的成员属性brand(商标)和color(颜色),
还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。
*/
class Vehicles {
    private String brand;// å•†æ ‡
    private String color;// é¢œè‰²

    public Vehicles(String brand, String color) {
        this.brand = brand;
        this.color = color;
    }

    public void run() {
        System.out.println("我已经开动了");
    }

    public void showInfo() {
        System.out.println("商标:" + brand + ";颜色:" + color + "\n");
    }
}

/*
编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),
并编写构造方法。
*/
class Car extends Vehicles {// å°æ±½è½¦

    private int seats;

    public Car(String brand, String color) {
        super(brand, color);
    }

    public void setSeate(int seats) {
        this.seats = seats;
    }

    public int getSeats() {
        return seats;
    }

    public void showCar() {
        System.out.println("小汽车,座位数:" + seats + "个");
    }
}

/*
编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),
还应增加成员方法showTruck(在控制台显示卡车的信息),并编写构造方法。
*/
class Truck extends Vehicles {//卡车

    private float load;

    public Truck(String brand, String color) { // æž„造方法
        super(brand, color);
    }

    public double getLoad() {
        return load;
    }

    public void setLoad(float load) {
        this.load = load;
    }

    public void showTruck() {
        System.out.println("卡车,载重:" + load + "公斤");
    }
}

运行截图:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-04
就写3个类,然后定义属性,写几个方法,主要就是子类多了几个不同的方法,实例化的时候要在构造方法中,直接用工具右键,不用自己敲代码追问

能详细说说么 刚开始学表示看不懂

追答

直接百度下java继承,你会看到很多源码

第2个回答  2019-03-04
学java必须先弄清类和对象,学编程(不单单是JAVA),没有人天生就什么都有做题的思路,给你参照一下,suansu,javapublicclass.suansu{privateint,private,publicsuansu()}
第3个回答  2019-03-04

没明白你哪里不会做。。可以参考下面这个例子。

公共父类:

public class Animal { 
    private String name;  
    private int id; 
    public Animal(String myName, int myid) { 
        name = myName; 
        id = myid;
    } 
    public void eat(){ 
        System.out.println(name+"正在吃"); 
    }
    public void sleep(){
        System.out.println(name+"正在睡");
    }
    public void introduction() { 
        System.out.println("大家好!我是"         + id + "号" + name + "."); 
    } 
}

企鹅类:

public class Penguin extends Animal { 
    public Penguin(String myName, int myid) { 
        super(myName, myid); 
    } 
}

老鼠类:

public class Mouse extends Animal { 
    public Mouse(String myName, int myid) { 
        super(myName, myid); 
    } 
}

这个Animal类就是一个父类,然后企鹅类和老鼠类继承这个类之后,就具有父类当中的属性和方法,子类就不会存在重复的代码,维护性也提高,代码也更加简洁,提高代码的复用性。

同理,你的也是这么写。

追问

我在父类中写构造方法 然后另外一个类写继承 类名就报错了 还有运行的时候设的没有输出

追答

贴下代码和报错看看

第4个回答  2019-03-04

希望对你有帮助,相互学习的过程,望采纳!

基类Vehicles

public class Vehicles {
    private String brand;
    private String color;
    public Vehicles(){
    }
    public Vehicles(String brand , String color){
        this.brand = brand;
        this.color = color;
    }
    public void run(){
        System.out.println("我已经开动了");
    }
    public void showInfo(){
        System.out.println("品牌为:" + brand + "," + "颜色为:" +color);
    }
    public String getBrand() {
        return brand;
    }
    public void setBrand(String brand) {
        this.brand = brand;
    }
    public String getColor() {
        return color;
    }
    public void setColor(String color) {
        this.color = color;
    }
}

子类Car

public class Car extends Vehicles {
    private int seats;
    public Car(String brand , String color , int seats){
        this.setBrand(brand);
        this.setColor(color);
            this.seats = seats;
    }
    public void showCar(){
        System.out.println("小汽车品牌为:" + this.getBrand() + ",颜色为:" + this.getColor() + ",座位数为:" + seats);
    }
    public int getSeats() {
        return seats;
    }
    public void setSeats(int seats) {
        this.seats = seats;
    }
}

子类Truck

public class Truck extends Vehicles {
    private float load;
    public Truck(String brand , String color , float load){
        this.setBrand(brand);
        this.setColor(color);
        this.load = load;
    }
    public void showTruck(){
        System.out.println("大卡车品牌为:" + this.getBrand() + ",颜色为:" + this.getColor() + ",载重为:" + load + "吨");
    }
    public float getLoad() {
        return load;
    }
    public void setLoad(float load) {
        this.load = load;
    }
}

测试类VehiclesTest

public class VehiclesTest {
    public static void main(String[] args) {
        Vehicles vehicles = new Vehicles("交通工具","红色");
        vehicles.run();
        vehicles.showInfo();
        
        Car car = new Car("小汽车实例","蓝色",4);
        car.run();
        car.showCar();
        
        Truck truck = new Truck("大卡车实例","绿色",(float) 1000.00);
        truck.run();
        truck.showTruck();
    }
}

相似回答