JAVA面向对象之构造方法复习

这是一篇准备就业的复习博客。。。。。

把以前学过的内容进行一次汇总整合,也方便大家学习,欢迎大家指正。

 

JAVA面向对象之构造方法

目录

JAVA面向对象之构造方法

构造方法Constructor

A-构造方法概述和作用:

B-构造方法格式特点:

C-构造方法的语法格式如下:

D-构造方法注意事项


构造方法Constructor

A-构造方法概述和作用:

构造方法是类的一种特殊方法,用来初始化类的一个新的对象Java 中的每个类都有一个默认的构造方法,它必须具有和类名相同的名称,而且没有返回类型。

B-构造方法格式特点:

1)构造方法名与类名必须完全一致
2)构造方法没有任何返回值类型的声明,包括void也没有
3)构造方法中不能使用return语句
4)构造方法可以重载
5)接口和抽象类不允许被实例化,所以没有构造方法。
6)当一个类中没有定义构造函数时,系统会默认添加一个无参的构造方法。
7)存在自定义构造方法时,都不会再自动添加无参的构造方法。
8)不能被static、final、synchronized、abstract和native修饰。
9)可以被权限修饰符public、protected 和 private 修饰。
       由于构造方法用于初始化一个新对象,所以用 static 修饰没有意义;构造方法不能被子类继承,所以用 final 和 abstract 修饰没有意义;多个线程不会同时创建内存地址相同的同一个对象,所以用 synchronized 修饰没有必要。

C-构造方法的语法格式如下:

class  Student
{
    public Student(){}    //默认无参构造方法
    public Student([paramList]){}    //定义构造方法
    …
    //类主体
}

        在一个类中,与类名相同的方法就是构造方法。每个类可以具有多个构造方法,但要求它们各自包含不同的方法参数。

构造方法主要有无参构造方法和有参构造方法两种,示例如下:

class Student {
	private String name;			//姓名
	private int age;				//年龄

	public Student() {				//空参构造
		System.out.println("空参的构造");
	}

	public Student(String name,int age) {
		this.name = name;
		this.age = age;
		System.out.println("有参的构造");
	}
	
	public void show() {
		System.out.println(name + "..." + age);
	}
}

编写主函数测试:

class test_Student {
	public static void main(String[] args) {

		Student s1 = new Student();
		s1.show();

		System.out.println("---------------------");

		Student s2 = new Student("张三",23);
		s2.show();

		System.out.println("---------------------");

		Student s3 = new Student("李四",24);
		s3.show();
	}
}

运行结果:


空参的构造
null...0
---------------------
有参的构造
张三...23
---------------------
有参的构造
李四...24

Process finished with exit code 0
  • 构造方法的重载

        该示例定义了两个构造方法,分别是无参构造方法和有参构造方法。在一个类中定义多个具有不同参数的同名方法,这就是方法的重载。这两个构造方法的名称都与类名相同,均为 Student。在实例化该类时可以调用不同的构造方法进行初始化。

重载:方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表。

 

D-构造方法注意事项

  1. 如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
  2. 如果我们给出了构造方法,系统将不再提供默认的无参构造方法。
  3. 注意:如果我们想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法。

 

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值