类中的Java toString
我在下面发布的代码中遇到了找不到符号的错误。我试图初始化一辆轿车使用它的类和有toString功能后,但没有任何工作为我。请帮忙类中的Java toString,java,Java,我在下面发布的代码中遇到了找不到符号的错误。我试图初始化一辆轿车使用它的类和有toString功能后,但没有任何工作为我。请帮忙 class cars { String make; String model; String color; int year; double price; public String sedancClass(String initMake, String initModel, String initColor, int
class cars {
String make;
String model;
String color;
int year;
double price;
public String sedancClass(String initMake, String initModel, String initColor, int initYear, double initPrice) {
make = initMake;
model = initModel;
color = initColor;
year = initYear;
price = initPrice;
String name = "Sedan";
String main = (color + " " + make + " " + model + " " + name + " " + year + " costs $" + price);
return main;
}
}
public class autoPark {
public static void main(String args[]) {
cars sedan1;
sedan1 = new sedanClass("Ford" , "Model-1" , "white" , 2015, 20000);
}
}
根据你提供的,我认为这就是你正在努力做的
等级车{
串制;
弦模型;
字符串颜色;
国际年;
双倍价格;
//参数化构造函数
公共汽车(String initMake、String initModel、String initColor、int initYear、double initPrice){
make=initMake;
模型=初始模型;
颜色=初始颜色;
年份=初始年份;
价格=初始价格;
}
@凌驾
公共字符串toString(){
String name=“Sedan”;
字符串main=(颜色+“”+制造+“”+型号+“”+名称+“”+年份+“成本$”+价格);
回水总管;
}
}
公营自动停车场{
公共静态void main(字符串参数[]){
cars sedan1;//按名称sedan1声明cars对象
sedan1=新车(“福特”、“1型”、“白色”,2015,20000);//使用cars构造函数初始化sedan1
System.out.println(sedan1);//打印sedan1以调用toString()方法
}
}
为什么我们使用@Override注释
重写方法时使用@Override注释被视为java编码的最佳实践,因为有以下两个优点:
根据您编写的内容,sedancClass是一个方法,而不是构造函数,这意味着您不应该使用“new”调用它,预期的返回类型是String,而不是cars。你可以写字符串sedan1=sedanClass(“福特”,“1型”,“白色”,2015,20000)好的,就几个问题,@override做什么?当我尝试在主cars类中添加更多类时,它会显示无效的方法声明,需要返回类型。我使用另一辆公共SUV(xx,xxx,xx)按照与您在公共汽车上相同的步骤操作,但它不断给出错误。我明白了,谢谢您的回答。还有一件事,当我用你的确切步骤创建另一个名为SUV的类时,为什么它需要一个返回类型,以及如何为该构造函数添加toString?很抱歉,你说的不是很清楚。如果你能给我看一下代码,我会更有帮助的。这里有一个代码链接,我试图在车内创建更多的类,还有更多的toString。请记住,在一个类中,不能创建多个具有相同签名的方法。在本例中,您创建了多个导致问题的
toString()
方法。要解决此问题,应为每种车辆类型创建单独的类,并创建toString()
方法。为了提高代码的质量,我建议您在java中对继承进行同样的处理。