构造方法(Constructor )那点事

来源:互联网 发布:免疫细胞疗法 知乎 编辑:程序博客网 时间:2024/05/18 18:18

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、相信各位朋友,当生成了类的实例对象后,会最先调用构造方法,这里开始有个误区,以为是构造方法生成了类的对象,其实不是,构造方法仅仅是生成对象后,根据你的语法,去调用的特殊方法,也是为了初始化成员变量


0 0