A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 董将 中级黑马   /  2012-12-19 15:25  /  1321 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

构造器(又叫构造函数或构造方法)

1 什么是构造器
创建对象时,需要使用构造器!
new Student(); -- 其中Student()就是构造器!
new 和构造器永不分离!
new int[] – 可以把int[]理解成数组的构造器!

2 构造器与其他方法相比有何不同
构造器也是方法。
        构造器名称必须与类名相同,大小写都要相同!
        构造器不能声明返回值类型!连void都不能给出!
        构造器与其他方法一样,可以重载!
        同一类中的构造器名称必须相同(都和类名一样),并且参数列表必须不同!

3 如何调用构造器
  使用new和构造器可以用来创建对象!这就是构造器的调用,或者说这是构造器作用!

4 构造器的作用
构造器的作用:
构造器与其他方法是相同的!方法体内可以写正常的代码!
他不是用对象来调用的,只能使用new和他一起使用。

通常在构造器中写的代码是用来初始化对象的,
所谓初始化对象就是给对象的属性赋值!

构造器还有其他工作,前面我们已经讲过。显示初始化操作就是由构造器来完成的。

new 会给属性赋值为默认值;
构造器会先执行显示初始化操作;
在显示初始化操作之后,执行构造器内容!

5 默认构造器
在一个类中,没有给出任何一个构造器时,系统会为我们添加一个默认构造器!
如果类中已经存在构造器,那么系统就不会在给你添加默认构造器了。
默认构造器是public
默认构造器是没有参数的
默认构造器中没有任何代码

构造器的两个工作:
1        因为构造器与类名相同,所以new可以通过构造器的名字找到要实例化的对象类型!
new Student(); -- new会通过构造器名字去方法区找Student.class,如果找不到会去加载Student.class。
  2 构造器会在new执行结束后被调用!而且它会先做显示初始化操作,然后再执行构造器的内容。

6 构造器的重载
一个类中的构造器名字必然是相同的,那么它们的参数列表一定不同。
重载这里就不多说了。
public Student() {}
public Student(int n, String aname, int a, String s ) {
    ….
}


7 new和构造器的分工


8 构造器与setXXX方法是否功能上有重叠
没有!
因为使用构造器是在创建新的对象。
而使用setXXX()方法来设置属性,是在原有对象上进行设置。

1 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马