面向对象基础(四)
1. 函数的重载
2. 构造函数的作用
1. 函数的重载
Chongzai.java
class Chongzai{
void funA(){
System.out.println("没有参数的funA函数");
}
void funA(int i){
System.out.println("拥有整形参数的funA函数");
}
}
Test.java
public class Test{
public static void main(String args []){
Chongzai a = new Chongzai();
a.funA();
a.funA(10);
}
}
跟现实世界对应起来, funA可理解为"洗", 洗衣服、洗澡、洗脚都可以
重载的定义:
<1>两个或者多个函数在同一个类当中
<2>函数名相同
<3>参数列表不同
2. 构造函数的作用
<1>生成对象
Chongzai.java
class Chongzai{
Chongzai(){ //编译器会自动生成
} //这就是构造函数, 名字和类名一样
}
加入我们在构造函数中添加一句成为下面这样
Chongzai.java
class Chongzai{
Chongzai(){
Syetem.out.println("我就是构造函数");
}
}
Test.java
public class Test{
public static void main(String args []){
Chongzai a = new Chongzai();
}
}
这样就会打印出上面那句话.
<2> 给成员变量赋初始值
Person.java
public class Person{
Person(){ //此时不能省略不写, 相当于低保, 下面有钱则不发钱,没有才帮你补贴
}
Person(String n, int a){ //与上面构成重载
name = n ;
age = a ;
}
String name;
int age;
}
Test.java
public class Test{
public static void main(String args []){
Person person1 = new Person("zhangsan",10);
Person person2 = new Person("lisi",20);
}
}