3. 定义一个类

一、定义一个类

/*
 * 示例:定义一个类
 */

[修饰符] class 类名
{
	// 成员1:零个到多个构造器定义
	[修饰符] 构造器名(形参列表)
	{
		// ...
	}

	// 成员2:零个到多个成员变量
	[修饰符] 类型 成员变量名 [= 默认值];

	// 成员3:零个到多个方法
	[修饰符] 方法返回值类型 方法名(形参列表)
	{
		// ...
	}

	// 成员4:零个到多个初始化块
	[修饰符] {
		// ...
	}
}

1. 外部类的修饰符:{public, final, abstract, 省略}

2. 构造器的修饰符:{public | protected | private, 省略}

    ①由于构造器主要用于被其他方法调用(以返回该类的实例),所以通常把构造器设置成public访问权限,除非业务需要限制创建该类的对象

  • public:允许系统中任何位置的类来创建该类的对象
  • protected:被其子类调用
  • private:阻止其他类创建该类的实例

3. 成员变量的修饰符:{public | protected | private, static, final, 省略}

4. 方法的修饰符:{public | protected | private, static, final | abstract, 省略}

5. 初始化块的修饰符:{static, 省略}

补充:内部类的修饰符:{public | protected | private, static, final | abstract, 省略}

二、类的成员剖析

1. 构造器

    ①作用:在创建对象时执行初始化

    ②构造器名必须和类名相同,且没有返回值类型

    ③如果程序员没有为Java类提供构造器,则系统会为该类提供一个无参数的构造器,其执行体为空

    ④一旦程序员提供了自定义的构造器,系统就不再提供默认的构造器

补:其实在构造器执行之前,系统已经创建了一个对象(包含为该对象分配内存空间、为该对象执行默认初始化),只是这个对象还不能被外部程序访问,只能在该构造器中通过this来引用。

猜你喜欢

转载自www.cnblogs.com/xzxl/p/10904981.html