扩展知识 
- 不定长参数：
声明方法时，如果有若平个相同类型的参数，可以定义为不定长参数，该类型的参数声明如下∶
```
权限修饰符 返回值类型 方法名（参数类型... 参数名）
```
**注意∶** 参数类型和参数名之间是三个点，而不是其他数量或省略号。

## 实例1：使用 this 关键字实现给饼只加一个蛋
顾客买鸡蛋灌饼要求加几个蛋，烙饼大妈就给饼加几个蛋，不要求的时候就只加一个蛋。创建鸡蛋灌饼 EggCake 类，创建有参数和无参数构造方法，无参构造方法调用有参数构造方法并实现初始化。
```java
public class EggCake { // 创建鸡蛋灌饼EggCake类
	int eggCount; // 鸡蛋灌饼里蛋的个数（属性）
	// 有参数构造方法，参数是给饼加蛋的个数
	public EggCake(int eggCount) { // 参数为鸡蛋灌饼里蛋的个数的构造方法
		this.eggCount = eggCount; // 将参数eggCount的值付给属性eggCount
		System.out.println("这个鸡蛋灌饼里有" + eggCount + "个蛋。");
	}
	// 无参数构造方法，默认给饼加一个蛋
	public EggCake() { // 默认构造方法
		// 调用参数为鸡蛋灌饼里蛋的个数的构造方法，并设置鸡蛋灌饼里蛋的个数为1
		this(1);
	}
	public static void main(String[] args) {
		EggCake cake1 = new EggCake(); // 创建无参的鸡蛋灌饼对象
		EggCake cake2 = new EggCake(5); // 创建鸡蛋灌饼对象，且鸡蛋灌饼里有5个蛋

	}
}
```
    定义了两个构造方法，在无参构造方法中可以使用this关键字调用有参的构造方法。但是要注意，this()语句之前不可以有其他代码。

#### 练习1：设计加油站类和汽车类，加油站提供一个给车加油的方法，参数为剩余汽油数量。每次执行加油方法，汽车的剩余汽油数量都会加 2。


#### 练习2：智能手机的默认语言为英文。，但制造手机时可以将默认语言设置为中文。编写手机类， 无，参构造方法使用默认语言设计，利用有参构造方法修改手机的默认语言。

#### 练习3：张三去KFC买可乐，商家默认不加冰块。但是张三可以要求加 3 个冰块。请利用有参构造方法实现上述功能。

#### 练习4：创建教师类，类中有姓名、性别和年龄三个属性，在构造方法中使用 this 关键字分别为这三个成员属性赋值。

#### 练习5：一只大熊猫，长 1.3 米，重 90千克。在自定义方法中使用this关键字调用类的成员变量并在控制台输出这只大熊猫的信息。

#### 练习6：创建信用卡类，有两个成员变量分别是卡号和密码，如果用户开户时没有设置初始密码，则使用"123456"作为默认密码。设计两个不同的构造方法，分别用于用户设置密码和用户未设置密码两种构造场景。