//建立共性内容 雇员 
abstract class Employee 
{ 
        private String name; //名字 
        private String id; //员工编号 
        private double pay;//薪水 
        private double bonus ;//奖金 
        Employee(String name,String id,double pay) 
        { 
                this.name = name; 
                this.id = id; 
                this.pay = pay; 
        } 
        Employee(String name,String id,double pay,double bonus) 
        { 
                this.(name,id,pay);//想这里访问另外一个构造函数,但他的类的是抽象的,使用this他说需要标识符。怎么修改这句话??? 
//this.(name,id,pay); 应该是这样的 
 
                this.bonus = bonus; 
        } 
        public abstract void work();//抽象方法 
        public void show() 
        { 
                System.out.println("名字:"+name+"\t员工编号:" +id+"\t薪水"+pay); 
        } 
        public void show() 
        { 
                System.out.println("名字:"+name+"\t员工编号:" +id+"\t薪水"+pay+"奖金"+bonus); 
        } 
} 
//描述程序员 
class Programmer extends Employee 
{ 
        Programmer(String name,String id,double pay) 
        { 
                super(name,id,pay); 
        } 
        public void work() 
        {//复写其抽象方法 
   
                System.out.println("工作是编写代码"); 
        } 
} 
//描述经理 
class Manager extends Employee 
{ 
        private double bonus; //奖金 
        Manager(String name,String id,double pay,double bonus) 
        { 
                super(name,id,pay); 
                this.bonus = bonus; 
        } 
        public void work() 
        { 
                System.out.println("工作是管理程序员"); 
        } 
} 
class Abstract //主类 
{ 
        public static void main(String[] args) 
        { 
                Programmer pr = new Programmer("张三","技术部01",3000); 
                Manager ma = new Manager("王五","经理",9000, 5000); 
   
                pr.show(); 
                pr.work(); 
                ma.show(); 
                ma.work(); 
        } 
} 
补充一下this用法 
 
this是指对象本身,super则是代表其父类,都是在定义类的时候用到 ; 
 
 this关键字只能出现在方法内部,表示调用方法的那个对象的引用,通常情况下编译器会自动帮你添加,只有当你明确指出当前对象的引用时才需要使用this关键字,例如当需要返回当前对象的引用时就常常在return语句里这么写: 
object A{ 
……  
return this; 
} 
      如果想在意个构造器重调用另一个构造器,以避免重复代码,你可以用this做到这一点,在构造器中,如果为this添加了参数列表,那么就有了不同的含义,这将产生对符合此参数列表的摸个构造器的明确调用。但并不能在一个构造器中用相同的方法调用两个构造器,而且必须将this调用构造器这行至于最顶端。 
super和this的用法一样  只不过指定的父类对象  |