Java我已经定义了构造方法为什么还是提醒我未定义?
packageretestC1;classtree{Stringname;//定义的成员变量,在整个类中都有效intage;intweight;publictree(St...
package retestC1;
class tree{
String name; //定义的成员变量,在整个类中都有效
int age;
int weight;
public tree(String n,int a,int w){
name=n;
age=a;
weight=w;
}
public String talk(){
return("世界上最大的生物是:"+name+"\r他的年龄是:"+age+"\r他的体重是:"+weight);
}
}
public class test{
public static void main(String[] args) {
tree most=new tree("世界"+2000+1000); //这里提示说tree()构造方法未定义。
System.out.println(most.talk());
}
} 展开
class tree{
String name; //定义的成员变量,在整个类中都有效
int age;
int weight;
public tree(String n,int a,int w){
name=n;
age=a;
weight=w;
}
public String talk(){
return("世界上最大的生物是:"+name+"\r他的年龄是:"+age+"\r他的体重是:"+weight);
}
}
public class test{
public static void main(String[] args) {
tree most=new tree("世界"+2000+1000); //这里提示说tree()构造方法未定义。
System.out.println(most.talk());
}
} 展开
10个回答
展开全部
java已经定义了构造方法,还是提醒未定义,是因为新建对象时,使用的构造函数,并没有包含没有参数的构造函数,而代码上已经声明了有参数的构造函数。java中默认每个类都要有一个无参构造。如下代码:
package com.qiu.lin.he;
public class Ceshi {
public Ceshi(String str){//有参构造函数
}
public static void main(String[] args) {
Ceshi ce = new Ceshi();//这里会报这个错误,The constructor Ceshi() is undefined,需要有一个无参构造函数
}
}
展开全部
tree most = new tree("世界",2000,1000);
另外纠正一下你一个不算错误的错误
一般情况下,类名首字母是需要大写的,这是习惯问题
追问
是的是的,受教啦:)谢谢:)
我现在在自学Java,不知道亲们是怎么学的?
世界上最大的生物是“世界爷”,一种年龄超过两千岁的大树,体重超过一千吨。
追答
多看多谢多练,没事去骚扰一下大牛们。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码贴出来,好能帮到你的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的tree类的构造函数有3个参数tree(String n,int a,int w),
而你new这个类的对象的时候给的参数却只有一个tree most=new tree("世界"+2000+1000);
你应该改成:
tree most=new tree("世界",2000,1000);
而你new这个类的对象的时候给的参数却只有一个tree most=new tree("世界"+2000+1000);
你应该改成:
tree most=new tree("世界",2000,1000);
追问
我知道啦!符号搞错了~:)
谢谢:)
我现在在自学Java,不知道亲们是怎么学的?
世界上最大的生物是“世界爷”,一种年龄超过两千岁的大树,体重超过一千吨。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询