类的成员:构造器(构造方法)

本文深入解析构造器的概念,探讨其在创建和初始化对象时的关键作用。文章详细解释了构造器的特性,包括其命名规则、不可声明的返回类型、无法被特定关键字修饰的特点,以及与普通方法的区别。

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

构造器的特征:

》具有与类相同的名称

》它不声明返回类型。(与声明void不同)

》不能被static    final   synchronized   abstract     native 修饰,不能有return  语句返回值

 

 

构造器的作用:1)创建对象;2)给对象初始化

》如:Oder  o = new Oder()l;        Person  p = new  Person ("Pete,15");

》如同我们规定每个"人" 一出生就必须先洗澡,我们就可以在“人”的构造器中加入完成
“洗澡”的程序代码,于是每个"人"一出生就会自动完成“洗澡”,程序就不必再需要为每个

刚出生的”人“一个个的告诉他们要“洗澡”了。

package prectice;

/**
 * 注意:构造器(构造方法)不是方法的一种,
 * 
 * 主要原因是:构造器和方法不一样,方法是可以通过(对象.方法)来调用的   ,但是构造器是为了  造对象的。
 * 
 * fields   属性   constructor  构造器(又称构造方法)    
 * 
 * 类的结构之三:构造器  (或构造方法、constructor)的使用
 * 
 * 一、构造器的作用:
 * 	1.创建对象
 * 	2.初始化对象属性
 * 二、说明:
 * 	1.如果没有显式的定义类的构造器,系统则默认提供一个空参的构造器
 *  2.定义构造器的格式:权限修饰符   类名(形参列表){}
 *  3.一个类中定义的多个构造器,彼此构成重载。(构造器都是同类且同名的)
 *  4.一旦我们显式的定义了类的构造器,系统将不提供默认的空参构造器
 * @author ZZ1299
 *
 */


//第一步,先写类,第二步  ,创造类的对象

public class PersonTest {
	
	public static void main (String[] args){
	
		/**
		 * 创建类的对象   这里创造Person 类型的一个p   
		 * 即   变量类型    变量名   = new Person()——————右边是创造的对象
		 * 复习;   变量类型  变量名 = new  变量类型    等号左边是什么类型,右边就应该是什么类型,所以右边
		 * 本质上是   new 构造器
		 * 变量类型     变量名    = new  构造器
		 * 
		 */
		Person p  = new Person();//这里的Person()是一个空参构造器
		
		p.eat();
		
		Person p1= new Person("Tom");
		
		//赋值成功之后可以直接通过System.out.println(p1.name);直接调用
		System.out.println(p1.name);//这里没有体现封装性也可以直接调用了        输出Tom
		
	}

}

//造一个类
class Person {
	
	//属性
	String name;
	int age;
	
	
	//构造器   现在把Person p  = new Person();这个默认的构造器显式的写出来了
	public Person(){
		System.out.println("Person()....");
	}
	
	//做一个带形参的构造方法   可以初始化所造对象的当前的属性
	public Person(String n ){
		name = n;   //这里把形参赋值给name    意味着造对象的同时,把name的值也进行了赋值
		
		/**
		 * 上面的代码中:	public static void main (String[] args) 的Person p1= new Person("Tom");
		 * Tom赋值给了n,n给了name,这个name是当前创建的对象p1的
		 * 
		 */
	}
	
	//还可以在初始化新的对象,初始化的时候把name,age都初始化了
	public Person (String n ,int a){
		name = n;
		age	=a;
	}
	
	/**
	 * 一个类中可以有多个构造器,可以把这些构造器称之为       构造器的重载
	 * 
	 * 
	 */
	
	
	
	public void eat(){
		System.out.println("人可以吃饭");
	}
	public void study(){
		System.out.println("人可以学习");
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值