Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 构建我自己的课程?_Java_Eclipse_Class_Methods - Fatal编程技术网

Java 构建我自己的课程?

Java 构建我自己的课程?,java,eclipse,class,methods,Java,Eclipse,Class,Methods,我在学习如何编写和使用自己的课程方面遇到了困难。比如, import java.text.NumberFormat; public class BikeCommute { private String route; private double distanceTraveled; private double timeRequired; private String dateTraveled; private String mode; private double gallonsSaved;

我在学习如何编写和使用自己的课程方面遇到了困难。比如,

import java.text.NumberFormat;

public class BikeCommute {

private String route;
private double distanceTraveled;
private double timeRequired;
private String dateTraveled;
private String mode;
private double gallonsSaved;
final private int mpg = 25;


public BikeCommute(String mode, String dateTraveled, String route, 
        double distanceTraveled, double timeRequired)
{
    mode = this.mode;
    route = this.route;
    distanceTraveled = this.distanceTraveled;
    timeRequired = this.timeRequired;
    dateTraveled = this.dateTraveled;
}

public double gallonsCalculated(){
    gallonsSaved = distanceTraveled/mpg;
    return gallonsSaved;

}

public double getGallons(){
    return gallonsSaved;
}

public String toString(){

    return mode + route + distanceTraveled + timeRequired + dateTraveled + gallonsSaved;
}
}

我正试图编写一个名为BikeCommute的类,它将读取路线、交通方式、行驶距离、所需时间和行驶日期,通过将行驶距离除以每加仑英里数计算出节省了多少加仑汽油,并输出路线、模式、行驶距离和所需时间,日期已过,加仑已省下。但是,当我运行它时,它返回Null0.0null0.0。有什么想法吗?

作业从右到左。替换

mode = this.mode;


BikeCommute
中的其他字段变量也是如此,赋值从右向左。替换

mode = this.mode;


BikeCommute
中的其他字段变量也是如此,赋值从右向左。替换

mode = this.mode;


BikeCommute
中的其他字段变量也是如此,赋值从右向左。替换

mode = this.mode;


与BikeCommute中的其他字段变量相同,您使用的方法错误:

mode = this.mode;
应该是:

this.mode = mode;

你把这些都搞错了:

mode = this.mode;
应该是:

this.mode = mode;

你把这些都搞错了:

mode = this.mode;
应该是:

this.mode = mode;

你把这些都搞错了:

mode = this.mode;
应该是:

this.mode = mode;

你的问题是关于这门课上的一个具体问题;但是,你也应该考虑一般问题。

如果您在构建或使用自己的类时遇到问题,可能是因为您混淆了类的构建和使用。实际上,如果您在“构建类”之前“使用类”,您可以获得更好的结果。我知道这听起来像胡说八道,但这是测试驱动开发背后的驱动思想,它是编写健壮可用程序的更有效方法之一

考虑研究JUnit并学习如何设置“测试”目录。我还建议您尽可能少地学习“刚刚足够”的maven来实现自动化。不要一开始就试图成为一名青年或专业演奏家。在这个区域开始剪切和粘贴是合适的

然后,您可以先编写测试:

public void testBikeCommute() {
  BikeCommute commute = new BikeCommute(...);
  Assert.assertEquals(5, commute.getGallons());
}
现在你可以看到你的设计很奇怪,因为我的大部分通勤都没有加仑。当你试图在编写软件之前“使用”它时,你可能会发现你的“通勤”实际上是两种理论上的通勤之间的比较,一种是开车,另一种是骑自行车

public void testCommuteSavings() {
  BikeCommute bike = new BikeCommute(...);
  CarCommute car = new CarCommute(...);
  SavingsCalculator calculator = new Calculator(car, bike);
  Assert.assertEquals(5, calcuator.getSavedGallons());
}
这种“使用第一”的技术可以让您开发一种更清晰的问题表示,使用JUnit之类的工具包,甚至可以成为一种自动化测试策略。此外,它还使一些项目非常容易测试,如

public void testBikeCommuteUsesZeroGallons() {
  BikeCommute bike = new BikeCommute();
  Assert.assertEquals(0, bike.getGallonsUsed());
}

干杯

你的问题是关于这门课上的一个具体问题;但是,你也应该考虑一般问题。

如果您在构建或使用自己的类时遇到问题,可能是因为您混淆了类的构建和使用。实际上,如果您在“构建类”之前“使用类”,您可以获得更好的结果。我知道这听起来像胡说八道,但这是测试驱动开发背后的驱动思想,它是编写健壮可用程序的更有效方法之一

考虑研究JUnit并学习如何设置“测试”目录。我还建议您尽可能少地学习“刚刚足够”的maven来实现自动化。不要一开始就试图成为一名青年或专业演奏家。在这个区域开始剪切和粘贴是合适的

然后,您可以先编写测试:

public void testBikeCommute() {
  BikeCommute commute = new BikeCommute(...);
  Assert.assertEquals(5, commute.getGallons());
}
现在你可以看到你的设计很奇怪,因为我的大部分通勤都没有加仑。当你试图在编写软件之前“使用”它时,你可能会发现你的“通勤”实际上是两种理论上的通勤之间的比较,一种是开车,另一种是骑自行车

public void testCommuteSavings() {
  BikeCommute bike = new BikeCommute(...);
  CarCommute car = new CarCommute(...);
  SavingsCalculator calculator = new Calculator(car, bike);
  Assert.assertEquals(5, calcuator.getSavedGallons());
}
这种“使用第一”的技术可以让您开发一种更清晰的问题表示,使用JUnit之类的工具包,甚至可以成为一种自动化测试策略。此外,它还使一些项目非常容易测试,如

public void testBikeCommuteUsesZeroGallons() {
  BikeCommute bike = new BikeCommute();
  Assert.assertEquals(0, bike.getGallonsUsed());
}

干杯

你的问题是关于这门课上的一个具体问题;但是,你也应该考虑一般问题。

如果您在构建或使用自己的类时遇到问题,可能是因为您混淆了类的构建和使用。实际上,如果您在“构建类”之前“使用类”,您可以获得更好的结果。我知道这听起来像胡说八道,但这是测试驱动开发背后的驱动思想,它是编写健壮可用程序的更有效方法之一

考虑研究JUnit并学习如何设置“测试”目录。我还建议您尽可能少地学习“刚刚足够”的maven来实现自动化。不要一开始就试图成为一名青年或专业演奏家。在这个区域开始剪切和粘贴是合适的

然后,您可以先编写测试:

public void testBikeCommute() {
  BikeCommute commute = new BikeCommute(...);
  Assert.assertEquals(5, commute.getGallons());
}
现在你可以看到你的设计很奇怪,因为我的大部分通勤都没有加仑。当你试图在编写软件之前“使用”它时,你可能会发现你的“通勤”实际上是两种理论上的通勤之间的比较,一种是开车,另一种是骑自行车

public void testCommuteSavings() {
  BikeCommute bike = new BikeCommute(...);
  CarCommute car = new CarCommute(...);
  SavingsCalculator calculator = new Calculator(car, bike);
  Assert.assertEquals(5, calcuator.getSavedGallons());
}
这种“使用第一”的技术可以让您开发一种更清晰的问题表示,使用JUnit之类的工具包,甚至可以成为一种自动化测试策略。此外,它还使一些项目非常容易测试,如

public void testBikeCommuteUsesZeroGallons() {
  BikeCommute bike = new BikeCommute();
  Assert.assertEquals(0, bike.getGallonsUsed());
}

干杯

你的问题是关于这门课上的一个具体问题;但是,你也应该考虑一般问题。

如果您在构建或使用自己的类时遇到问题,可能是因为您混淆了类的构建和使用。实际上,如果您在“构建类”之前“使用类”,您可以获得更好的结果。我知道这听起来像胡说八道,但这正是测试驱动开发背后的驱动思想