java的方法重载

来源:百度知道 编辑:UC知道 时间:2024/05/21 09:52:20
abstract class Employee {
String name;
double basic;
String address;
Employee() {
}

Employee(String str, double sal, String addr) {
name = str;
basic = sal;
address = addr;
}

void show() {
System.out.println("姓名: \t\t\t" + name);
System.out.println("地址: \t\t\t" + address);
System.out.println("薪资: \t\t\t" + basic);
}
}

class Manager extends Employee {
String department;
Manager() {
}

Manager(String str, double sal, String addr, String dept) {
super(str, sal, addr);
department = dept;
}

void show() {
super.show();
System.out.println("部门: \t\t\t" + department);
}
}

class Direc

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。
static与abstract,它们不能同时用于修饰一个方法。因为abstract的语义就是说这个方法是多态方法,需要subclass的实现。而static方法则是在本类中实现的,编译期绑定,不具有多态行为。
synchronized同步,也是一样的道理,具体可以参考JAVA语言规范

这是java多态的一种应用。