求大神赐教

来源:12-1 综合练习

长在椰子树上的猕猴桃

2016-11-05 18:30

main

import java.util.Scanner;

public class text {


public static void main(String[] args) {

car car1=new car(1,"宝马",4,400);//为什么写成dada car1=new car(1,"宝马",4,400);就报错

truck truck1=new truck(2,"景龙",2000,500);

pickup pickup1=new pickup(3,"皮卡",4,1000,600);

System.out.println("欢迎使用哒哒租车系统!");

// TODO Auto-generated method stub

        System.out.println("你是否要租车?是1,否0");

       

        Scanner in = new Scanner(System.in);

         int i = in.nextInt();

         if(i==0){

        System.out.println("欢迎下次光临!") ;

         }

         else{

        System.out.println("你可以租车的类型及其价目表:");

        System.out.println("序号           "+"汽车             "+"容量                   "+"租金            ");

        car1.getcar();

            truck1.gettruck();

            pickup1.getpickup();

         

         

         System.out.println("请输入你想租借的车序号");

         Scanner or = new Scanner(System.in);

         int order = in.nextInt();

         System.out.println("请输入你想租借天数");

         Scanner nu = new Scanner(System.in);

         int number = in.nextInt();

         switch(order){

         case 1: System.out.println("总费用为:"+400*number);break;

         case 2: System.out.println("总费用为:"+500*number);break;

         case 3: System.out.println("总费用为:"+600*number);break;

         }

         


}

}

}

dada类

public class dada {

String name;

int rent;

   int people;

   int goods;

   int order;

   public int getpeople(){

  return people;

  }

   public int getgoods() {

  return goods;

  }

   public String getname() {

  return name;

  }

   public int  getrent() { 

  return rent;

  }

   public int  getorder() {

  return order;

  }

   

}

car类

public class car extends dada {

public car(int o,String n,int p,int r ){

order=o;

name=n;

people=p;

rent=r;

}

    public void getcar(){

    System.out.println(order+"     "+name+"       "+people+"        "+rent+" ");

    }


}

pickup类


public class pickup extends dada {

public pickup(int o,String n,int g,int p,int r ){

order=o;

name=n;

goods=g;

people=p;

rent=r;

}

    public void getpickup(){

    System.out.println(order+"     "+name+"       "+goods+"/"+people+"    "+rent+" ");

    }

}

truck类


public class truck extends dada {

public truck(int o,String n,int g,int r ){

order=o;

name=n;

goods=g;

rent=r;

}

    public void gettruck(){

    System.out.println(order+"     "+name+"         "+goods+"     "+rent+" ");

    }

}


写回答 关注

2回答

  • 绿色蝈蝈拜见
    2016-11-17 15:42:07
    已采纳

    刚才把你的工程跑了一遍,其实对于"为什么写成dada car1=new car(1,"宝马",4,400);就报错"这个问题我发现,此时报错的并非dada car1=new car(1,"宝马",4,400);
    而是car1.getcar();
    因为你父类dada中并没有getcar()方法,所以导致错误。归根结底还是对于多态没有理解透彻。

    对于父类引用指向子类对象而言,该引用只能调用父类中定义的方法和变量; 这就是原因了。

  • 长在椰子树上的猕猴桃
    2016-11-05 18:32:19

    刚开始学习,求赐教

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530559 学习 · 6091 问题

查看课程

相似问题