Java方法重载和继承
1. 一个类如果要继承另一个类,如果另一个类有构造函数,那么当前类必须要实现一个调用父类的构造函数super(参数,,,)如果父类的构造函数是私有的那么就没有办法继承该父类
2. 静态方法不能被覆盖
v静态方法在编译时根据调用该方法的类或对象所属的类决定
v实例方法在运行时根据对象所属的类决定
一个类中有多个同名的方法
如:Math类中的min()方法
条件(满足其一):
l参数的个数不同
l参数的类型不同
如果两个方法仅返回值不同,不是重载,会报错
super.方法名([参数表]);
——调用父类的方法
super.成员变量名
——访问父类的成员变量
super([参数表]);
——调用父类的构造函数
功能类似于this
注意事项:调用父类的构造函数
子类从父类继承所有方法和变量;
子类不能实现父类的构造函数
有两种方法获得构造函数:
1.使用默认构造函数 2.编写一个或多个构造函数
要调用父类的构造函数,必须在之类构造函数的第一行使用super关键字
要调用特定的父类构造函数,必须为super提供参数
如果没有调用,编译器会插入一个父类无参数构造函数的隐含调用;因为子类的实现,需要先实现父类执行构造函数,所以必须实现一个构造方法,包含父类构造方法的调用
class Employee{
private String name;
private double salary;
public Employee(String n,double s){ name=n;salary=s; }
public Employee(String n){ name=n; }
}
class Manager extends Employee{
private String department;
public Manager(String name,double salary,String dept)
{ super(name,salary);
department=dept;
}
public Manager(String name,String dept)
{ super(name);
department=dept;
}
public Manager(String dept)
{ department=dept;
}
}
- 上一篇 »javascript中最好用的extend继承方法
- 下一篇 »css继承性和不继承的属性。