2017-06-05 54 views
0

在VBScript(和VBA/VB6)有一个叫做CreateObject在java中是否有“createObject”?

像这样的功能:

Dim ExcelApp As Object 
Set ExcelApp = CreateObject("Excel.Application") 

上面的代码建立了Excel.Application类,的一个实例,而不需要早对接参考Excel类型库。

在Java中有什么可比的吗?

+3

是的,它的名字叫做'new' –

+0

据我所知,在Java中,我们用'new'关键字来创建一个类的对象。 EX:'Scanner sc = new Scanner(System.in)' –

+0

还有一个[newInstance](https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#newInstance ())方法: –

回答

3

有四种不同的方式(我真的不知道有没有第五种方式来做到这一点)来创建Java对象:

  1. 使用new关键字 这是创建最常见的方式java中的一个对象。我在某处读到几乎99%的对象是以这种方式创建的。

    MyObject object = new MyObject(); 
    
  2. 使用Class.forName() 如果我们知道类&的名字,如果它有一个公共的默认构造函数,我们可以创建这样一个对象。

    MyObject object = (MyObject) Class.forName("subin.rnd.MyObject").newInstance(); 
    
  3. 使用克隆() 克隆()可被用于创建现有对象的副本。

    MyObject anotherObject = new MyObject(); 
    MyObject object = anotherObject.clone(); 
    
  4. 使用对象序列化 对象序列化是什么,但创建其序列化形式的对象。

    ObjectInputStream inStream = new ObjectInputStream(anInputStream); 
    MyObject object = (MyObject) inStream.readObject(); 
    

现在你知道如何创建一个对象。但建议只在有必要时才创建对象。

https://javabeanz.wordpress.com/2007/09/13/different-ways-to-create-objects/