我一直在试图做一个包括内部啤酒的瓶类。为什么"瓶子"外级"瓶子"中的啤酒无效?这样的"私人'啤酒"领域从未分配?
这是我的代码
public class Bottle {
private Beer beer; //THE PROBLEM IS IN THIS LINE//
private double volume;
public Bottle () {
}
public Beer getBeer {return beer;}
public void Beer setBeer(Beer beer){return beer;}
public double getVolume {return volume};
public void setVolume (double volume) {return this.volume = volume;}
public class Beer {
private String brandName;
private double strength;
public Beer (String brandName, double strength) {
this.brandName = brandName;
this.strength = strength;
}
public String getbrandName() {return brandName;}
public void setbrandName(String brandName) {return this.brandName = brandName;}
public double getstrength() {return strength;}
public void setstrength(double strength) {return this.strength = strength;}
}
}
您的代码没有一个问题,而是很多问题。主要是语法错误。我对其进行了更正以使其编译:
public class Bottle {
private Beer beer = new Beer("Beck's", 5.1);
private double volume;
public Bottle () {
}
public Beer getBeer() { return beer; }
public Beer setBeer(Beer beer) {return beer;}
public double getVolume() { return volume; }
public void setVolume(double volume) { this.volume = volume; }
public class Beer {
private String brandName;
private double strength;
public Beer (String brandName, double strength) {
this.brandName = brandName;
this.strength = strength;
}
public String getbrandName() {return brandName;}
public void setbrandName(String brandName) { this.brandName = brandName;}
public double getstrength() {return strength;}
public void setstrength(double strength) { this.strength = strength;}
}
}
正如Harmlezz所说,您有一些语法错误。您正在以各种get
方法返回值,但将返回类型提及为void
。
纠正这些错误后,您可以在这样的瓶子对象中设置啤酒对象:
public static void main(String[] args) {
Bottle bottle = new Bottle();
Beer beer = bottle.new Beer("La La Beer", 2);
bottle.setBeer(beer);
System.out.println(beer.getbrandName());
}
您的代码中有很多错误。
您应该做这样的事情
public class Bottle {
private Beer beer;
private double volume;
public Bottle () {
}
public Beer getBeer() {
return beer;
}
public void setBeer(Beer beer){
this.beer = beer;
}
public double getVolume() {
return volume;
}
public void setVolume (double volume) {
this.volume = volume;
}
public class Beer {
private String brandName;
private double strength;
public Beer (String brandName, double strength) {
this.brandName = brandName;
this.strength = strength;
}
public String getbrandName() {
return brandName;
}
public void setbrandName(String brandName) {
this.brandName = brandName;
}
public double getstrength() {
return strength;
}
public void setstrength(double strength) {
this.strength = strength;
}
}
}
建议首先清除您的基础知识,例如如何编写功能,然后全部跳入代码。