System.out.println("The non pure blood Horses over 2 years old are: ");
if(!pureBlood == false)
{
System.out.printf("name= %s\nage= %d\nheight= %s\ncolor= %s\n",
this.name, this.age, this.height, this.color);
}
当我编译它时,我得到这样的错误
non-static variable this cannot be referenced from a static context
System.out.printf("name= %s\nage= %d\nheight= %s\ncolor= %s\n", this.name, this.age, this.height, this.color);"
答案 0 :(得分:0)
您正试图在代码中的静态方法中引用您的变量(this.name,this.age,...大概)。
如果要打印这些属性,请将其放在类中的实例方法中。
public void toString(){
System.out.println("The non pure blood Horses over 2 years old are: ");
if(!pureBlood == false){
System.out.printf("name= %s\nage= %d\nheight= %s\ncolor= %s\n",
this.name, this.age, this.height, this.color);
}
}
如果没有更多的代码,我不知道你真正想要做什么,所以这只是猜测。