12.1Java-构造方法

本文深入解析Java中的构造方法,包括其作用、格式及this关键字的使用,并详细阐述super关键字在子类调用父类构造方法的规则与实践。

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

一、构造方法

作用:在new的同时对成员变量赋值,给对象的属性初始化赋值
格式:
权限 方法名(参数列表){
}
方法的名字,必须和类的名字完全一致,大小写一致
构造方法不许写返回值类型,如void,int

构造方法在new时自动执行,仅执行一次

代码:Person类(内含this用法介绍)

 1 public class Person {
 2     private String name;
 3     private int age;
 4     
 5     /*
 6      * this的用法
 7      *     1.    this.的方式,区分局部变量和成员变量同名问题;this。后接成员变量
 8      *     2.    this在构造方法之间,this()
 9      *  
10      */
11     
12     public Person(String name,int age){
13         //System.out.println("有参数");
14         this.name = name;
15         this.age = age;
16         
17     }
18     
19     //构造方法的重载,空参数的构造方法
20     public Person(){
21         //this()的使用,必须放在构造方法第一行,调用的是有参的构造方法
22         /*this("李四",20);
23         System.out.println("空参数的构造方法");*/
24         
25         System.out.println("父类的构造方法");
26     }
27 
28     public String getName() {
29         return name;
30     }
31     public void setName(String name) {
32         this.name = name;
33     }
34     public int getAge() {
35         return age;
36     }
37     public void setAge(int age) {
38         this.age = age;
39     }
40 }

 

二、super()用法

子类中,super()的方式,调用父类的构造方法
super()调用的是父类的空参数构造方法
super(参数)调用的是父类的有参数构造方法
注意:子类中所有的构造方法,无论重载多少个,第一行必须是super()
构造方法没有重写

this()和super()不能同时存在于一个构造方法
子类的所有构造方法,直接,间接必须调用到父类构造方法
子类的构造方法,什么都不写,默认的构造方法第一行super();

代码:Student类

 1 public class Student extends Person{
 2     public Student(){
 3         this("222",2);
 4          
 5     }
 6     
 7     public Student(String s,int a){
 8         super("111",1);
 9     }
10 }

 

转载于:https://www.cnblogs.com/RainCloudxy/p/10875405.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值