二、Java面向对象(4)_构造函数

本文详细介绍了Java中的构造函数,包括其作用、特点、默认构造函数的概念及构造函数的重载等知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2018-04-29

 

构造函数(构造方法/构造器)

 

在java类中,如果不显示声明构造函数,JVM 会给该类一个无参的默认(缺省)的构造函数,这个构造函数不执行任何代码(即花括号里无方法体)且你产生类的对象时只能用不带参数的方法。一个类 可以有多个构造函数(重载)。一个类 至少存在一个构造函数
当一个类声明了构造函数以后,JVM 是不会再给该类分配默认的构造函数。因此写了有参数的构造方法就最好加一个无参数的构造方法。

---------------------------------------------------------------------------------------------------------------------------

一、构造函数的作用

  • 创建类的对象,必须和new关键字一起使用(创建对象其实是在调用构造函数,构造函数不能直接被调用,必须和new一起使用)。
  • 初始化(实例化)对象

 

二、构造函数的特点

  • 构造方法的方法名必须与类名相同。
  • 构造方法没有返回类型(因此在方法名前不申明返回类型),也不能定义为void。  void Student(){};这是普通方法。
  • 构造方法中不需要使用return返回语句。(其实构造方法是有返回值的,它返回的是当前创建对象的引用)。
  • 构造方法可以重载。

 

三、默认(缺省)构造函数

  • 符合构造函数的特点
  • 无参数
  • 无方法体
  • 如果类A没有使用public修饰,则默认构造函数也没有public修饰符

   如果类A使用了public修饰,那么默认构造函数也使用public修饰符

   (一般来说,默认构造函数与当前类的访问修饰符是一致的)

 

代码说明:

 1 public class Test3 {
 2    private int n;
 3 
 4    Test3() {
 5       System.out.println("调用默认构造器");
 6    }
 7 
 8    Test3(int n) {
 9       this.n = n;
10      System.out.println("调用非默认构造器");
11   }
12 
13    public static void main(String[] args) {
14        Test3 t1; //声明一个对象 不调用任何构造函数(没有初始化)
15        Test3 t2 = new Test3(); //声明并创建一个对象 使用默认构造函数
16        Test3 t3 = new Test3(3); //声明并创建一个对象 使用非默认构造函数 不使用默认构造函数
17    }
18 }

 

 

四、构造函数的重载

  构造方法是一种特殊的方法,可以重载。

 

转载于:https://www.cnblogs.com/sunNoI/p/8972072.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值