在没有创建对象实例的情况下调用变量

时间:2017-09-03 05:08:51

标签: java oop

我已经搜索了调用变量而没有在StackOverflow上创建对象实例,并且发现答案是使用static关键字来声明变量,您将能够在扩展类中调用该变量没有创建该类的实例,但它不适合我。这是我试过的 -

abstract public class Flower{
      private static int petals;
      public void setPetals(int petals){
          this.petals;
      }
}

所以我从另一个类调用了setPetals方法。我已经附上了课程的截图。如何在LotusFlower类中调用花瓣变量? enter image description here

1 个答案:

答案 0 :(得分:0)

要改进的事情很少:

  1. setPetals方法定义不是静态的,您实际上并没有在那里设置花瓣的值:

    public static void setPetals(int petals){
        this.petals = petals;
    }
    
  2. 花瓣变量是静态的,可以从setPetals引用,而不是:

    Flower.petals = petals; 
    
  3. 此外,您可以使用其他类中的setPetals方法:

    Flower.setPetals(100);