java面向对象(构造方法)

1.构造方法

 * 构造方法:
 * 1.构造方法又被称为构造函数/构造器
 * 2.构造方法语法结构:
 *   【修饰符列表】 构造方法名(形式参数列表){
 *   构造方法体;//构造方法名必须与类名保持一致
 * }
 * 3.回顾普通方法的语法结构:
 * 	【修饰符列表】返回值类型 方法名(形式参数列表){
		方法体
}
4.对于构造方法来说,“返回值类型”不需要指定,并且也不能写void,只要写上了void,那么这个方法就变成了普通方法
5.构造方法的作用?
	构造方法存在的意义是,通过构造方法的调用,可以创建对像
6.构造方法应该怎么调用?
	-普通方法是这样调用的:方法修饰符中有static的时候:类名.方法名(实参列表);方法修饰符列表中没有static的时候:引用.方法名(实参列表)
	-new 构造方法名(实参列表)
7、构造方法调用执行之后,有返回值吗?
	每个构造方法实际上执行结束后都有返回值,但是这个“return 值;”这样的语句不需要写。
	new User();//这就可以解释这句话的意义,User()是一个构造方法名,new +构造方法名,新建了一个对象。
	User u  = new User();//这个方法名的返回值,默认为一个User地址赋给引用变量,所以不用确定返回值,因为返回值是固定的
8、当一个类中没有定义构造方法时,会默认定义一个构造方法 
9、联系第8点。当一个类显示的将构造方法定义出来,那么系统则不再默认为这个类提供缺构造器。因此开发中建议手动加入无参构造方法,因为在开发中很常用,所以涉及到了构造器重载(类似于方法重载)

//一下对构造器方法,带static方法,不带static方法 三个方法调用的分析
public class Test
{
	public Test()
	{
		System.out.println("Default solution");
	}
	public Test(int x)
	{
		System.out.println("int solution");
	}
}


public class Test01
{
	public static void main(String[] args)
	{
		Test t = new Test();
		Test t1 = new Test(5); //这里涉及构造器重载,同时要注意,里面都会执行System.out.println()的输出语句
		Test01.show1();// 调用静态方法
		Test01 t2 = new Test01();
		t2.show(); //创建对象调用,实例方法
	}
	//一下定义方法必须创建对象才能够使用,调用为引用.类名
	public void show()
	{
		System.out.println("非static方法,使用时需要创建对象");
	}
	//一下static方法在本类中的使用,其他方法调用必须使用类名.方法名
	public static void show1()
	{
		System.out.println("static方法,使用时直接用类名")
}
引发思考,如何调取其他类中的static方法


 * */

以上讲述了构造方法的第一个作用,创建对象
无参数构造器,在调用时会默认初始化实例空间
同时这里也要知道,只有在new了一个对象之后,才会初始化分配出空间

2.构造方法的第二个作用,创建对象的同时,初始化实例空间。【给实例变量赋值】
即可以new构造方法的时候,就给实例变量赋值

public class Account
{
	//账户
	private String name;
	//余额
	private double money;
	//构造方法赋初值
	public Account(String x,double y)
	{
		name = x;
		money = y;
	}
	//当然由于name 和 monye被封装。读取以及修改需要,setter和getter,这里不补充个后续代码
}
//定义一个测试类去调用它
public class AccountTest
{
	public static void main(String[] args)
	{
		Account ac1 =	new Account("wenhao",3225); //构造函数的时候就直接赋初值
		}
}

构造器的默认生成方式
右键—>Source—>Generate ---- using Fields
可以选择你想要通过构造方法初始化的变量

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java构造方法是一种特殊的方法,用于创建对象并初始化对象的属性。构造方法称必须与类相同,没有返回类型(甚至没有void),并且在使用new关键字创建新对象自动调用。 构造方法有以下特点: 1. 构造方法必须与类相同,且没有返回类型。 2. 构造方法可以有参数,也可以没有参数。 3. 如果没有定义任何构造方法Java会自动提供一个默认构造方法,即没有参数的构造方法。 4. 如果定义了有参数的构造方法Java将不再提供默认构造方法。 5. 构造方法可以重载,即同一个类可以定义多个构造方法,只要它们的参数类型、个数或者顺序不同即可。 构造方法的作用是创建对象并初始化对象的属性,如下面的例子: ``` public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } } ``` 在上面的例子,Person类有一个有参数的构造方法,可以用来创建一个Person对象并初始化对象的属性。例如: ``` Person p = new Person("Tom", 20); System.out.println(p.getName() + " " + p.getAge()); ``` 输出结果为: ``` Tom 20 ``` 这里使用了有参数的构造方法来创建Person对象,并设置了对象的属性值。注意,在构造方法使用了关键字this来引用当前对象,以便在构造方法访问对象的属性和方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值