day10Java构造方法

本文深入解析构造方法的概念、特点及应用场景,包括无参构造和有参构造的区别,同时探讨了this关键字的两种主要用途,即在类内部引用当前对象的属性和方法,以及调用同一类中的其它构造方法。

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

一.构造方法

1.1构造方法:

又叫构造器,构造函数。Constructor。就是一个特殊的方法。

  • 声明的语法:public 类名(){}
    • 修饰符:只能有访问权限的修饰符。不能加static。
    • 返回值:没有返回值,也不能写void。
    • 方法名:必须和类名相同
  • 调用的方式:new 关键字调用
    • new关键字后面跟着构造方法即可。
  • 作用:专门用于创建对象。
  • 分类:
    a),无参构造方法。–>创建对象。
    b),有参构造方法。–>创建对象,对象的属性进行赋值。

注意点:

如果一个类中,没有显示的构造方法,那么由编译器自动添加一个,无参构造方法。
如果类中,有了自己写的构造方法,那么编译器不会再给添加任何的构造方法。

编码习惯:

  • 私有化属性
  • 提供getter和setter方法
  • 添加无参构造,和有参构造。
1.2对比一下构造方法和普通方法
序号对比点构造方法普通方法
1返回值没有,也不能写void必须写返回值类型,没有就写void
2方法名必须和类名一致见名知意
3参数列表————
4修饰符最多只能访问权限:public访问权限public,还有其他,比如static
5调用必须使用new关键字没有static,类中的成员方法。对象.方法
有static,直接方法名。
6作用专门用于创建对象,并且可以初始化属性的值。实现特定的功能
7执行每当创建一个对象,就会调用一次,执行1次通过方法名,调用几次就执行几次。

二.this关键字

词义:这个

2.1 this的用法一

表示当前对象,写在本类当中。
this.属性;//访问本类的属性,可以进行赋值和取值
this.方法;//访问本类的方法,进行方法调用
在本类中,方法和属性前,其实都是有对象的。都存在一个this关键字。也可以省略不写。由编译器自动的添加。

public Person(String name,int age){//name="李小花"
		this.name = name; //=左侧的是this的name属性
}

this.成员变量。可以解决命名冲突的问题。
使用this关键字,this后的这个name,就是成员变量,对象的属性。没有this的就是局部变量。
2.2 this的用法二

this()指代当前类的构造方法。
如果类中有多个构造方法,那么靠参数来区分:
this()–>无参构造,
this(参数)–>有参构造
当this()来指代构造方法的时候,放在第一行。

示例代码:

class Person{
	String name;
	int age;
    public Person(){//无参的构造方法
        
    }
    public Person(String name,int age){//有参的构造方法
        this();//指代本类的构造方法
        this.name = name;
        this.age = age;
    }

    public void showInf(){
        System.out.println(name+","+this.age);
    }
}
class Test{
    public static void main(String[] args){
        Person p1 = new Person();
        p1.name = "李小花";
        p1.age = 18;
        
        Person p2 = new Person("王二狗",18);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值