‘壹’ java创建对象报错没有定义,我是定义了的
你这是调用的无参的构造方法
你看看student类里面有没有无参的构造方法
如果有有参的构造方法,需要传入参数来调用相应的构造方法
还有一种可能:
你里面写了多个类,含有main方法的类需要写public,类名和文件一致
‘贰’ JAVA创建对象有哪几种方式
有4种显式地创建对象的方式:
1.用new语句创建对象,这是最常用的创建对象的方式。
2.运用反射手段,调用Java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。
3.调用对象的clone()方法。
4.运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法.
下面演示了用前面3种方式创建对象的过程。
4.当Java虚拟机加载一个类时,会隐含地创建描述这个类的Class实例.
‘叁’ java创建对象除了用New 以外,还可以用什么方法创
运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。
例如:
ClassobjClass=Class.forName("Customer");//运用反射手段创建Customer对象
Customerc1=(Customer)objClass.newInstance();//会调用Customer类的默认构造方法
补充:
newInstance(),采用的是类加载机制,创建一个新的实例,使用newInstance()方法时,对象身上一定要有一个默认的无参构造方法;使用类加载机制:可以很灵活的,创建类的实例,以后更换类的时候,无须修改源代码了。