码迷,mamicode.com
首页 > 编程语言 > 详细

Java08-构造方法

时间:2018-07-11 17:11:17      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:方法   定义   构造方法   必须   生成   技术分享   参数   return   访问权限   

Java08-构造方法

一、构造方法

1、什么是构造方法?

构造方法(类方法)是一个方法名和类名相容的特殊的成员方法。

2、构造方法的作用?

当使用new关键字创建一个对象时,为新建对象在堆内存开辟一个空间之后,Java系统将自动调用构造方法初始化该新建对象。

3、对象初始化过程

 技术分享图片

二、构造方法的定义与调用

1、定义:

  class 类名{

         [访问权限] 类名(参数表){

      语句体;

           //构造方法没有返回值

    }

  }

2、调用:

       类名 对象名 = new 构造方法名(实参表);

3、栈内存、堆内存

  Person p1 = new Person();

  上述语句中有两个对象:引用对象和内存对象

  具体的存储方式如下图:

技术分享图片 

  注:new运算符开辟的存储区都在堆内存中

三、构造方法:初始化对象

1、方法名必须和类名相同;

2、定义类时,若没有定义构造方法,java会自动生成一个无参的构造方法;若定义了构造方法,将会把自动生成的够造方法覆盖掉。

3、构造方法没有返回值,而普通的成员方法必须要有返回值类型;

4、构造方法只能用new运算符调用,不能用对象名调用;

 

四、构造方法的重载

1、方法重载:方法名相同,参数列表不同,实现的效果也不同;

2、构造方法的重载:给构造方法传递不同的参数,就能实现不同形式的初始化;

3、构造方法与普通方法的区别:构造方法是类的一种特殊方法,其特殊性如下:

  (1)可以重载;

  (2)方法名与类名相同;

  (3)不能有返回值,不使用return语句;

  (4)不能由编程人员显式的直接调用(即不能通过“对象名.方法名();”的方式调用),只能通过new操作符调用;

  (5)缺省的空构造方法:在java语言中,每个类都至少有一个构造方法,如果累的定义者没有显式的定义任何构造方法,系统将自动提供一个缺省的构造方法;如果定义了一个或多个构造方法,系统将不再缺省。

4、构造方法与普通成员方法的区别?

  (1)构造方法名与类名相同,成员方法自定义;

  (2)构造方法没有返回值,即没有方法类型;

  (3)构造方法由系统调用,用来实例化对象;

Java08-构造方法

标签:方法   定义   构造方法   必须   生成   技术分享   参数   return   访问权限   

原文地址:https://www.cnblogs.com/luoyu113/p/9295304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!