同一类的静态类对象

时间:2018-06-05 08:05:30

标签: java static

我尝试创建两个类Test的静态对象: CAT DOG 。我希望他们能够使用不同的输出int talk()方法:

public class HelloWorld
{
  public static void main(String[] args)
  {
    System.out.println("Hi");

    Test.DOG.talk();  //"I am a cat" output
  }
}

class Test  {
    public static Test DOG = new Test("I am a dog");
    public static Test CAT = new Test("I am a cat");

    public static String talkString;

    private Test(String text)  {
        talkString = text; 
  }

  public static void talk()  {
        System.out.println(talkString); 
  }
}

然而 CAT 对象会覆盖talkString,因此 DOG 无法再使用它。有没有解决方法,同时保持 DOG CAT 静态?

0 个答案:

没有答案