Java面向对象:对象创建与重载构造方法

需积分: 10 1 下载量 106 浏览量 更新于2024-08-18 收藏 157KB PPT 举报
"激活重载的构造方法在Java编程中的应用" 在Java编程中,构造方法是用于初始化新创建对象的特殊方法。一个类可以有多个构造方法,它们具有相同的名称但参数列表不同,这种现象称为构造方法的重载。重载构造方法允许我们在创建对象时根据需要提供不同的初始状态。在提供的代码示例中,`Employee` 类就展示了如何激活重载的构造方法。 `Employee` 类有三个构造方法: 1. 一个带有两个参数的构造方法,接受姓名(`String n`)和薪水(`int s`),并分别赋值给成员变量 `name` 和 `salary`。 2. 一个只接受姓名的构造方法,通过调用第一个构造方法并传入0作为薪水来实现。这是通过使用关键字 `this` 来完成的,`this(n,0)` 表示调用同一个类中的其他构造方法。 3. 一个无参数的构造方法,它通过调用第二个构造方法,传递 "Unknown" 作为姓名,表示如果未提供姓名,则默认为 "Unknown"。 `this` 关键字在 Java 中有多种用途,其中之一就是在构造方法中调用同一类的其他构造方法。这使得代码更加简洁,避免了重复的初始化代码。每个构造方法都负责一个特定的初始化场景,从而提高了代码的可读性和可维护性。 面向对象编程的三大特性在 `Employee` 类中也有所体现: - **封装**(Encapsulation):`Employee` 类将数据(如姓名和薪水)封装在类的内部,对外提供公共方法来访问和修改这些数据,而不是直接暴露成员变量。 - **继承**(Inheritance):虽然这个例子没有直接展示继承,但 Java 允许一个类继承另一个类,从而获取父类的属性和方法,实现代码的复用。 - **多态**(Polymorphism):多态是指同一种行为在不同对象上表现出不同的形式。在 `Employee` 类中,虽然所有的构造方法都有相同的名字,但由于参数列表不同,它们实际上表现出了不同的行为,这就是多态的一种体现。 在Java中,类是对象的蓝图,定义了对象的数据结构(成员变量)和行为(方法)。对象是类的实例,具有类定义的属性和行为。当创建一个对象时,会经历以下三个步骤: 1. **声明**(Declaration):定义一个类类型的变量,例如 `Employee employee`。 2. **实例化**(Instantiation):使用 `new` 关键字创建对象,分配内存空间,并调用构造方法来初始化对象,如 `employee = new Employee("John", 50000)`。 3. **初始化**(Initialization):一旦对象被创建,可以通过点运算符 `.` 来访问和修改对象的属性,或者调用对象的方法。 对象的生命周期包括创建、使用和清除。在不再需要对象时,Java的垃圾回收机制会自动清理不再使用的对象所占用的内存,以防止内存泄漏。然而,开发者也可以通过设置对象引用为 `null` 来帮助垃圾回收机制识别不再需要的对象。 激活重载的构造方法在Java编程中是一种常见的实践,它使我们能够根据不同的初始化需求灵活地创建对象,同时保持代码的清晰和高效。