{
public String getFlower(String strFlowerName)
{
if(strFlowerName.equals("rose"))
{ return new Rose();
}
if(strFlowerName.equals("peony"))
{ return new Peony();
}
return null;
}
}
这个程序运行时总是提示
D:\>javac Garden.java
Garden.java:7: cannot resolve symbol
symbol : variable rose
location: class Garden
{ return rose;
^
Garden.java:10: cannot resolve symbol
symbol : variable peony
location: class Garden
{ return peony;
^
我的看法是因为并没有声明构造器所以系统自动生成了一个默认构造器,这个构造器为
public Garden();
但是这个构造器没有参数,所以无法使用
public String getFlower(String strFlowerName)
方法,故系统报错。不知道我的解释是不是对的,希望各位指点一下。并且
帮我改正这个程序的错误之处。谢谢!
----------------解决方案--------------------------------------------------------
如果可以的话再看一下这个程序
public class InitObject
{
private Date today;
public static void main(String[] args)
{
new InitObject().print(); ×××
}
public void print()
{
System.out.println(today.toString());
}
}
打星号的那行意思是不是因为没有别的构造器,所以系统默认了构造器并且自动声明了
一个对象new InitObject() 还是利用打星号的那行同时进行了声明变量和调用print()方法?
求助!谢谢!
----------------解决方案--------------------------------------------------------
如果可以的话再看一下这个程序
public class InitObject
{
private Date today;
public static void main(String[] args)
{
new InitObject().print(); ×××
}
public void print()
{
System.out.println(today.toString());
}
}
打星号的那行意思是不是因为没有别的构造器,所以系统默认了构造器并且自动声明了
一个对象new InitObject() 还是利用打星号的那行同时进行了声明变量和调用print()方法?
求助!谢谢!
new InitObject() 是个对象,然后这个对象调用print()方法。
第一段代码能把其他的类贴出来吗?完整点,这样看不懂
----------------解决方案--------------------------------------------------------
new InitObject() 是个对象,然后这个对象调用print()方法。
第一段代码能把其他的类贴出来吗?完整点,这样看不懂
是否因为没有显式声明一个构造器,所以系统自动声明一个默认构造器,并且又自动声明了一个对象new InitObject()?即星号行之前,系统已经自动声明了new InitObject(),所以可以接着用new InitObject()来调用方法?
第一楼的代码是我从一本教科书上COPY来的。是全部的代码了。
----------------解决方案--------------------------------------------------------