关于默认构造器的问题
public class Garden{
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)
方法,故系统报错。不知道我的解释是不是对的,希望各位指点一下。并且
帮我改正这个程序的错误之处。谢谢!