java中用new定义对象有3种写法。
1.使用new关键字
通过这种方式,我们可以调用任意的构造函数(无参的和带参数的)。
<span style="color: #ff0000">Employee emp1 = new Employee()</span> 0: new #19 // class org/programming/mitra/exercises/Employee: dup: invokespecial #21 // Method org/programming/mitra/exercises/Employee."":()V
2.使用Class类的newInstance方法
我们也可以使用Class类的newInstance方法创建对象。这个newInstance方法调用无参的构造函数创建对象。
我们可以通过下面方式调用newInstance方法创建对象:
<span style="color: #ff0000">Employee emp2 = (Employee) Class.forName("org.programming.mitra.exercises.Employee").newInstance()</span>
3.使用反序列化
当我们序列化和反序列化一个对象,jvm会给我们创建一个单独的对象。在反序列化时,jvm创建对象并不会调用任何构造函数。为了反序列化一个对象,我们需要让我们的类实现Serializable接口 。
<span style="color: #ff0000">ObjectInputStream in = new ObjectInputStream(new FileInputStream("data.obj"))Employee emp5 = (Employee) in.readObject()</span> 你好很高兴回答你的问题。java中创建对象有以下几种方法。
第一个就是经常使用的通过new的方式。
第二个是通过反射的方式创建对象。
第三个是通过反序列化来创建对象。
如果有帮助到你,请点击采纳。