黑马程序员技术交流社区

标题: 构造函数(适合我们java初学者 多方总结、希望有所帮助) [打印本页]

作者: wh121    时间: 2015-7-11 00:36
标题: 构造函数(适合我们java初学者 多方总结、希望有所帮助)
                                                                    Java之构造方法


1.构造方法的常见形式:
使用new+构造方法 创建一个新的对象

2.构造方法概念:
构造方法是定义在Java类中的一个用来初始化对象的方法
(构造方法也是方法 它和我们普通的方法不同之处在于:以前我们使用的普通方法代表我们可以干什么具有什么功能。而构造方法可以创造一个对象并且可以初始化对象的值 所以说同样是方法但含义是不同的)
构造方法与类同名且没有返回值的

3.什么时候定义构造函数?
当分析事物时,该事物存在具备一些特性或者行为,那么将这些内容定义在构造函数中。

4.作用:
给对象进行初始化

5.格式:
函数名与类名相同 、不用定返回值类型、不可以写return语句。

      

例如:

                  (图1)                                                     (图2)                                      


6.特点
  (1)当没有指定构造方法时,系统会自动添加无参的构造方法,为了方便该类的初始化。

  (2)当有指定的构造方法,无论是有参、无参的构造方法,都不会自动添加无参的构造方法。(例如:将上面的图一的无参构造方法注释掉,图2的第六行会报错 就是因为你构造了有参的方法,无参的无法自动生成无参的构造方法了所以第六行会调用不了。)

  (3)构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法。和我们普通的方法重载是一样的。(例如:上图构造了一个有参的方法和一个无参的方法其实就是在重载)

  (4)构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值。例:


在上图1 screen设置一个条件         上图2 值设置screen的条件小于3.5时     运行结果:


7.注意;
  a.默认构造函数的特点
  b.多个构造函数是以重载的形似存在的
  c.构造函数和一般函数在写法上有不同在运行上也有不同,构造函数在对象一建立就运行,给对象初始化。而一般方法是对象调用才执行,给是对象添加对象具备的功能。
  d.一个对象建立,构造函数只运行一次,而一般方法可以被该对象调用多次。例:


  对变量进行封装( 在上图1上加)        对cpu重新赋值( 在上图2加)                运行结果:

8.构造函数初始化(可能用于应付面试,实际开发不常用)
  作用:给对象进行初始化
  对象一建立就运行,而且优先于构造函数执行
和构造函数的区别:构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化。不同对象的对应共性初始化内容写在构造代码块上。例:


     (在上图1加)                                      运行结果:


TelphoneDemo3.zip (1.23 KB, 下载次数: 63)









作者: 杨胤    时间: 2015-7-11 01:46
谢谢分享。。。。
作者: 禾叶青青    时间: 2015-7-11 08:10
楼主辛苦了
作者: 430422    时间: 2015-7-11 08:17
总结得非常好!
作者: oooohnick    时间: 2015-7-11 08:57
天哪 好详细!好好打印出来拜读!感谢!
作者: 加多宝    时间: 2015-7-11 09:00
我有这功底就o了
作者: 824519050    时间: 2015-7-11 10:21
不错,学习了
作者: 野驴少东    时间: 2015-7-11 10:55
:victory::victory:




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2