方法重载(this关键字的使用)
1.同一个类中(作用域相同)
2.函数名相同
3.参数列表不同
this
1.指明当前对象:this.name = name;
2.this():调用当前类的构造函数
*2.1构造函数之间不能相互调用
*2.2 this()必须位于当前构造函数有效代码第一行
class TestDemo{
public static void change(int a,int b){
int temp;
temp = a;
a = b;
b = temp;
}
public static void change(char a,char b){
char temp;
temp = a;
a = b;
b = temp;
}
}
方法重写
继承关系中子类(派生类)重新实现父类(根基类)的方法
1.父子类之间
2.函数名相同,参数列表也相同
class People{
private String name;
private int age;
public void fun(){
System.out.println("工作");
}
}
class Student extends People{
private int id;
@Override
public void fun(){
System.out.println("学习");
}
}
class Worker extends People{
private String company;
@Override
public void fun(){
System.out.println("公司");
}
}
区别
重载:同一个作用域,函数名相同,参数列表不同
重写:继承关系中,子类重新实现父类的方法
(函数名相同,访问修饰符(子类>= 父类))