| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1022 人关注过本帖
标题:大虾们,java java
取消只看楼主 加入收藏
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
大虾们,java java
题目:计算各种交通工具的运输费用,定义一个接口:Vehicle:包括,yuan_kilometer,distance,roadtoll,ridership(乘客数),还有一个计费方法。
现有两种交通工具:Car:计费方式:yuan_kilometer*distance+roadtoll+ridership*1
Bus:计费方式:yuan_kilometer*distance+roadtoll+ridership*0.2
我的代码如下:
package traspotecharging;
public interface Vehicle {
    float yuan_kilometer=0f;
    float distance=0f;
    float roadtoll=0f;
    int ridership=0;
    public double charge();
}

package traspotecharging;
public class Bus implements Vehicle{
    float yuan_kilometer;
    float distance;
    float roadtoll;
    int ridership;
    Bus(){}
    Bus(float a,float b,float c,int d){
          this.yuan_kilometer=a;
          this.distance=b;
          this.roadtoll=c;
          this.ridership=d;
      }
    public double charge(){
          return this.distance*this.yuan_kilometer+this.roadtoll+this.ridership*0.2;
      }
}

package traspotecharging;
public class Car implements Vehicle{
    float yuan_kilometer;
    float distance;
    float roadtoll;
    int ridership;
    Car(){}
    Car(float a,float b,float c,int d){
          this.yuan_kilometer=a;
          this.distance=b;
          this.roadtoll=c;
          this.ridership=d;
      }
    public double charge(){
          return this.distance*this.yuan_kilometer+this.roadtoll+this.ridership;
      }
}

package traspotecharging;
import java.util.Scanner;
public class Charge {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        float a=sc.nextFloat();
        int d=sc.nextInt();
        float b=sc.nextFloat();
        float c=sc.nextFloat();
        System.out.println("请输入交通工具:");
        char op=sc.next().charAt(0);
        Vehicle charge=null;
        switch(op){
        case 'b': charge=new Bus(a,b,c,d);
        break;
        case 'c': charge=new Car(a,b,c,d);
        break;
        }
        System.out.println(charge.charge());
    }
}
现在问题是要求增加其他交通工具时,不必改动以前的任何程序,只需要编写新的交通工具。(具体应该是用那什么哈希表之类的存在文件中,通过文件读入,加入新的交通工具,只需在文件中增加这项就可)
求助各位大虾们!!!  万分感谢!!!
搜索更多相关主题的帖子: java 运输费用 interface distance package 
2011-09-28 18:59
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
收藏
得分:0 
大虾们··   给点力啊 !!!  
2011-09-29 20:39
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
收藏
得分:0 
回复 3楼 付政委
额··  好吧!!    那你按照这上面的题目  ,不看代码  给我写一个啦·· (*^__^*) 嘻嘻……
2011-10-01 17:40
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
收藏
得分:0 
回复 4楼 husiwen
  序列化??    不懂···         我看老师做得时候是存一个xml文件     然后增加新的交通工具时只需在xml文件中加就行!
2011-10-01 17:44
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
收藏
得分:0 
回复 7楼 kinglovelqn
    人才!!!  (*^__^*) 嘻嘻……    分就给你啦·
2011-10-05 07:41
浪群
Rank: 1
等 级:新手上路
帖 子:29
专家分:6
注 册:2011-8-29
收藏
得分:0 
回复 9楼 w123012306
          难道要我翻译成鸟语你才看得懂?? (*^__^*) 嘻嘻……
2011-10-07 13:52
快速回复:大虾们,java java
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015400 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved