public abstract class Car {
// This class includes common properties for a car, in this way we wont have to change if we need to add a new car brand
public String name;
public String colour;
public int model;
public String feature;
public String getFeature() {
return feature;
}
public void setFeature(String feature) {
this.feature = feature;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getColour() {
return colour;
}
public void setColour(String colour) {
this.colour = colour;
}
public int getModel() {
return model;
}
public void setModel(int model) {
this.model = model;
}
}
Test.java
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
CarFactory carfactory = new CarFactory();
System.out.println("Hello, please enter your car brand \n BMW \n MERCEDE \n OPEL");
Car usercar = null;
String usertext = input.nextLine();
usercar = carfactory.makeCar(usertext);
System.out.println("enter colour of your car");
usertext = input.nextLine();
usercar.setColour(usertext);
System.out.println("enter model of your car");
usertext =input.nextLine();
usercar.setModel(Integer.parseInt(usertext));
System.out.println("Your Car Information;\n "+ usercar.getName()+" \n Colour:" + usercar.getColour() + "\n Model "+ usercar.getModel()+ "\n Your car's plus point is " + usercar.getFeature());
}
问题是,如果我想用toString Metod打印汽车信息,它会是怎样的?我在Car课上写了一个,但它没有用,功能是从汽车自己的课程分配..
这是我的toString metod
public String toString(){
return "Your Car Information;\n "+ getName()+" \n Colour:" + getColour() + "\n Model "+getModel()+ "\n Your car's plus point is " +getFeature();
}
答案 0 :(得分:1)
首先,您必须覆盖toString()
这样的java.lang.Object
方法:
class Car {
...
@Override
public String toString() {
return "Your Car Information;\n " + getName() + " \n Colour:" +
getColour() + "\n Model " + getModel() + "\n Your car's plus point is " +
getFeature();
}
}
其次,您可以像这样使用它:
public static void main(String[] args) {
// 'CarClass' is a no-abstract class, who extends the 'Car' class
Car car = new CarClass();
// the first way
String information = car.toString();
System.out.println(information);
// the second way
System.out.println(car);
}