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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邓飞飞 中级黑马   /  2012-4-14 17:00  /  1549 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Employee
            {
                  private string name;
                  private string id;
                  private double pay;
                   Employee(string name,string id,double pay)
                      {
                            this.name=name;
                            this.id=id;
                             this.pay=pay;
                      }
                   public abstract void work();
              }
            class Manager extends Employee
              {
                private int bonus;
                Manager(string name,string id,double pay,int bonus)
                        {
                           super(name,id,pay);
                            this.bonus=bonus;
                         }
                 public void work()
                    {
                          System.out.println("manager work");
                      }
              }
             class Pro extends Employee
               {
                   class Pro(string name,string id,double pay)
                        {
                           super(name,id,pay);
                         }
                   public void work()
                       {
                             System.out.println("Pro work");
                        }
                 }
                public class  AbstactDemo
                      {

                         public static void main(String[] args)
                                {
                                Manager man=new Manager(zhansan,01,100.00,400 );
                                    Pro p=new Pro(lisi,05,200.00);
                                    man.work();
                                    p.work();
                                  }
                      }
我在编译时,AbstractDemo.java:29: 错误: 需要'{'
                   class Pro(string name,string id,double pay)
                            ^
AbstractDemo.java:29: 错误: 需要';'
                   class Pro(string name,string id,double pay)
                                                             ^
AbstractDemo.java:48: 错误: 进行语法分析时已到达文件结尾
                      }

评分

参与人数 1黑马币 +10 收起 理由
贠(yun)靖 + 10 多打打代码,这种小失误就会少很多,加油~~.

查看全部评分

2 个回复

倒序浏览
你的代码有很多问题哦。比如:String类写成了小写string,构造方法加多了class关键字,还有就是你定义的class Employee类里面有抽象方法,但是你的类没有改成抽象类:
改过的代码如下:
  1. abstract class Employee {
  2.         private String name;
  3.         private String id;
  4.         private double pay;

  5.         Employee(String name, String id, double pay) {
  6.                 this.name = name;
  7.                 this.id = id;
  8.                 this.pay = pay;
  9.         }

  10.         public abstract void work();
  11. }

  12. class Manager extends Employee {
  13.         private int bonus;

  14.         Manager(String name, String id, double pay, int bonus) {
  15.                 super(name, id, pay);
  16.                 this.bonus = bonus;
  17.         }

  18.         public void work() {
  19.                 System.out.println("manager work");
  20.         }
  21. }

  22. class Pro extends Employee {
  23.         Pro(String name, String id, double pay) {
  24.                 super(name, id, pay);
  25.         }

  26.         public void work() {
  27.                 System.out.println("Pro work");
  28.         }
  29. }

  30. public class AbstactDemo {

  31.         public static void main(String[] args) {
  32.                 Manager man = new Manager("zhansan", "01", 100.00, 400);
  33.                 Pro p = new Pro("lisi", "05", 200.00);
  34.                 man.work();
  35.                 p.work();
  36.         }
  37. }
复制代码

评分

参与人数 2技术分 +1 黑马币 +10 收起 理由
贠(yun)靖 + 1
Akm + 10 很给力!

查看全部评分

回复 使用道具 举报
1.把Employee定义成抽象类,把string都改成String。
2.把Pro的构造函数前面的class去掉。
3.把主函数public static void main(String[] args)
                    {
                    Manager man=new Manager("zhansan","01",100.00,400 );
                        Pro p=new Pro("lisi","05",200.00);
                        man.work();
                        p.work();
                      }
里面Manager man=new Manager("zhansan","01",100.00,400 );和Pro p=new Pro("lisi","05",200.00);
前两个值加“”,它们是String类型的。
改好就对了,试过了,成功运行。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马