【发布时间】:2016-09-22 00:34:16
【问题描述】:
我正在寻找的输出是每次在 main 中调用 .getNumber() 时的返回值 4。现在我每次都得到 0 的输出。首先你会找到我的带有计数器的 Car 类,然后是我创建 4 个对象然后调用 .getNumber() 方法的 main 的摘录。
public class Car{
private String brand;
private int year;
private int price;
private int number;
public Car(String b, int y, int p){
brand = b;
year = y;
price = p;
}
public Car(){
brand = "Chevy";
year = 2005;
price = 3000;
}
public String getBrand(){
return brand;
}
public int getYear(){
return year;
}
public int getPrice(){
return price;
}
public int getNumber(){
return number;
}
public void setBrand(String b){
brand = b;
}
public void setYear(int y){
year = y;
}
public void setPrice(int p){
price = p;
}
public void increment(){
number++;
}
}
Car car1 = new Car();
Car car2 = new Car("Ford", 2013, 20000);
Car car3 = new Car("Audi", 2012, 25000);
Car car4 = new Car();
System.out.println("The total car number is: " + car1.getNumber());
System.out.println("The total car number is: " + car2.getNumber());
System.out.println("The total car number is: " + car3.getNumber());
System.out.println("The total car number is: " + car4.getNumber());
【问题讨论】:
-
为什么你的代码每次都打印 0?
-
我在笔记本电脑上使用 jgrasp,这就是我得到的输出。
-
当我运行程序时,这是我的输出: 总车数是:0 总车数是:0 总车数是:0 总车数是:0
-
不,我不是这个意思。我请你解释一下流程。你为什么希望它打印其他东西?
-
increment() 永远不会被调用。但这不是唯一的问题......