您的位置:首页 > 其它

构造方法(Constructor )那点事

2016-02-28 21:24 351 查看
1、老生常谈? 嘛是构造方法?

答:构造方法的中文名称也有好多:构造器、构造函数,初始函数,记得中文博大精神,在类中的与类名同名的没有返回值的方法,我们称为构造方法。。。

2、构造方法语法,直接上酸菜。

class Person {
Person() { //我就是构造方法

}
}


3、默认构造方法,我们经常写一个类,看似没有构造方法,当一个类没有任何构造方法时,编译器会为你隐式的加上一个默认构造方法

class Person {
//其实是有的哦,哥
}


4、隐式的super
答:在构造方法中,利用super调用父类的构造方法。但是为什么不写super也行啊?其实还是隐式的概念,如果你的父类有默认的构造方法,那么super()你可以不写,编译器就帮你干了,要是你的父类没有默认的构造方法,你就需要显式的super了

class Person {
Person() { //我就是构造方法
super();//隐式的super,这里也可以显式的写上,调用父类的无参构造方法,()代表参数哦
}
}


5、利用this调用本类中的构造方法

答:java大神,一定要将复用进行到底,一个类有多个构造方法,怎么会让你不能复用

class Person {
String temp;
Person() {
super();
}

Person(String temp) {
this();  //调用本类中,没有参数的构造方法。
this.temp = temp;
}
}


6、super与this,必须只能放在构造方法的第一行,必须只能放在构造方法的第一行,必须只能放在构造方法的第一行。

答:重要的事情就要说三遍!!!!!!!!!!

7、构造方法的用途呢?

答:其实主要是为实例变量(对象变量)服务的,这样你new 一个 实例对象的时候,确保实例变量得到初始化。欧耶,java就是这么贴心!!

8、静态变量也能在构造方法做初始化,但是不建议那么做,之前就说过啦。那样做是自己坑自己。

9、构造方法当然可以调用本类中的实例方法啦。

10、好问题:构造方法能调用静态方法吗?

答:当然是可以啦,静态方法在类加载的时候就得到初始化了,比你构造方法加载的早多了,真是的………………

11、能写多少个构造方法?

答:没有试过,能满足需求不就完了吗?哥?

12、在继承中,构造方法是不断被调用,有点递归的意思哈。即基类-子类-孙子类,这样的调用顺序。。

13、…………………………有类,那必然有构造方法,你躲不过的,未来想到什么,再补充什么吧。

14、相信各位朋友,当生成了类的实例对象后,会最先调用构造方法,这里开始有个误区,以为是构造方法生成了类的对象,其实不是,构造方法仅仅是生成对象后,根据你的语法,去调用的特殊方法,也是为了初始化成员变量
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: