A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


//抽象父类
abstract class Employme
{
        private String name;
        private String id;
        private double pay;
        Employme(String name,String id,double pay){
                this.name=name;
                this.id=id;
                this.pay=pay;
                System.out.println(name+"\n"+id+"\n"+pay);
        }
        //get和set方法
        public String get(){
                return name;
        }
        public void setId(String id){
                this.id=id;
        }
        public String getId(){
                return id;
        }
        public void setPay(double pay){
                this.pay=pay;
        }
        public double getPay(){
                return pay;
        }
        public abstract void work();
}
//子类对象
class Manager extends Employme
{       
        private double bonus;
//报错点
        super(String name,String id,double pay,double bonus);
       
        public void work(){
                System.out.println("management"+bonus);
        }
}
//子类
class Programmer extends Employme
{
//报错点
        super(String name,String id,double pay);

        public void work(){
                System.out.println("工作");
        }
}
//主函数
class Company
{
        public static void main(String[] args)
        {
                String name="如花";
                String id="$_9536";
                double pay=12304;
                double bonus=1234;
                Employme p=new Programmer(name,id,pay);
                print(p);
                Employme p1=new Manager(name,id,pay,bonus);
                print(p1);
        }
        public static void print(Employme p){
                p.work();
        }
}
报错:---------- javac ----------
Company.java:40: 错误: 非法的类型开始
        super(String name,String id,double pay,double bonus);
        ^
Company.java:48: 错误: 非法的类型开始
        super(String name,String id,double pay);
        ^
2 个错误

4 个回复

倒序浏览
在子类用super继承父类的属性时候,super括号里面无需加数据类型。。。把super(String name,String id,double pay,double bonus);改为super(name,id,pay)即可
回复 使用道具 举报
哦,试过了,好像还不行
回复 使用道具 举报
行进中的蜗牛 发表于 2014-9-14 18:25
哦,试过了,好像还不行

你要在构造里面改啊。。
这样
Programmer(String name, String id, double pay) {
                super(name, id, pay);
               
        }
回复 使用道具 举报
哦,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马