构造函数的名称必须与类名相同,包括大小写;
构造函数没有返回值,也不能用void修饰. 如果不小心给构造函数前面添加了返回值类型,那么这将使这个构造函数变成一个普通的方法,在运行时将产生找不到构造方法的错误。
一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。
构造方法可以重载,以参数的个数,类型,顺序。
例子如下:
class Person //人类{ public Person(String n,int a) //构造方法 { name = n; age = a; } private string name; private int age; } static void main(String[] args){ Person p = new Person("张三",14);//这就是作用,为其初始化 }
new一个对象的时候要用到构造函数,
例如:
Hello hello = new Hello();//这时调用的是Hello的无参数构造方法; Hello hello = new Hello("hi");//这个是调用Hello有参数构造方法,
在JAVA中如果不写构造方法的话,会默认加上一个无参数的构造方法,但是如果已经有了一个有参数的构造方法,那么无参数的构造方法就不会默认被加上.
如果Hello类中已经有了一个有参数的构造方法,这时再使用 Hello hello = new Hello();来创建对象的时候就会出错,这就是为什么书上要强调写了有参数的构造方法就最好加一个无参数的构造方法.
以上就是java中构造方法是什么的详细内容,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)