Java swing组件实例化

时间:2014-02-21 10:09:58

标签: java swing

最近在开发swing应用程序时,有人告诉我使用(ComponentClassName) Beans.instantiate(MyClass.class.getClassLoader(), ComponentClassName.class.getName())创建组件对象而不是使用“new”。我想知道正确的方法。

2 个答案:

答案 0 :(得分:1)

如果要动态选择要实例化的类型,则可以使用Beans.instantiate()。通常新关键字工作得很好,并且是我在Swing应用程序中总是使用的。

答案 1 :(得分:1)

我认为正确的方法是使用new关键字,毕竟,这就是它的作用。你使用Beans的方式似乎有点被迫,因为你知道你希望实例化什么类型的类。其次,由于这是一个swing应用程序,很可能你正在使用默认的swing类(可能会扩展其中一些)。这种方法的另一个问题是你的类中必须有一个没有args的构造函数。 Class.forName()可以用于与上面的代码相同的东西,但如果你不想在运行时动态创建一个类,请坚持使用new关键字。