12 面向对象2 构造函数 构造代码块 this

本文详细介绍了Java中的构造方法,包括概念、形式及构造方法的使用。此外,还探讨了构造代码块和局部代码块的特点及执行顺序。重点讲述了this关键字的含义及其在变量名冲突和构造方法间调用时的应用。最后通过一系列练习加深了对面向对象编程中对象创建流程的理解。
摘要由CSDN通过智能技术生成

1 构造方法

1.1 概念

构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法
构造方法的主要功能就是完成对象创建或者初始化
当类创建对象(实例化)时,就会自动调用构造方法
构造方法与普通方法一样也可以重载.

1.2 形式

与类同名,且没有返回值类型,可以含参也可以不含参
在这里插入图片描述

1.3 练习:构造方法创建对象/构造方法赋值

创建包: cn.tedu.oop
创建类: TestConstructor.java

package cn.tedu.oop;
/**本类用于测试构造方法*/
public class TestConstructor {
	//4.在公共类中创建入口函数
	public static void main(String[] args) {
		//5.创建Person类的对象进行测试
		/**1.每次new(实例化)对象时会自动调用构造方法*/
		Person p = new Person();
		System.out.println(p.name);
		System.out.println(p.age);
		System.out.println(p.address);
		p.eat();
		Person p2 = new Person("海绵宝宝");
		System.out.println(p2.name);
		System.out.println(p2.age);
		System.out.println(p2.address);
		p.eat();
		Person p3 = new Person("派大星",3,"海底");
		System.out.println(p3.name);
		System.out.println(p3.age);
		System.out.println(p3.address);
		p.eat();
	}
}
//1.创建Person类,用来描述人这一类型
class Person{
	//2.属性--创建成员变量
	String name;//姓名
	int age;//年龄
	String address;//地址
	
	/**2.默认存在无参构造,当new Person()会自动触发此无参构造*/
	/**3.构造方法也存在重载的现象:方法的重载:在同一个类中,方法名相同且参数列表不同的现象*/
	//普通方法的定义:修饰符 返回值类型 方法名 (参数列表){ 方法体  }
	//构造方法的定义:修饰符 方法名 (参数列表){ 方法体  } --方法名与类名一致
	
	//6.1创建无参构造--当new Person()时,会触发
	public Person() {
		System.out.println("我是Person类的无参构造");
	}
	/**快速向下复制:Ctrl+Alt+向下键*/
	/**4.当只提供了含参构造,默认的无参构造会被覆盖,所以在创建重载的构造方法时,一定注意手动添加无参构造*/
	//6.2创建1个参数的构造
	public Person(S
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值