LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 652|回复: 4

关于多个类的定义问题

[复制链接]
发表于 2005-1-31 17:22:25 | 显示全部楼层 |阅读模式
下面是我写的代码   以为import类的问题一直编辑不过去~~~

那位朋友可以帮我看看,如何定义多个类

就是比如  java.util.Arrays   java.util.ArrayList  我要用到这两个方法我该如何的去定义类那?
请指点~~~如果我教材看就更好了~~~


  1. import javax.swing.*;
  2. import java.util.*;
  3. import java.util.Arrays;
  4. import java.lang.Comparable;

  5. public class AdminHouro
  6. {
  7.         public static void main(String[] args)
  8.         {
  9.         ArrayList staff = new ArrayList();   //java.util.ArrayList
  10.                  
  11.         String        input = JOptionPane.showInputDialog  //java.swing.*
  12.                 ("how much money for A take");
  13.         int k = Integer.parseInt(input);
  14.                         input = JOptionPane.showInputDialog
  15.                 ("how much money for B take");
  16.         int k1 = Integer.parseInt(input);
  17.                         input = JOptionPane.showInputDialog
  18.                 ("how much money for C take");
  19.         int k2 = Integer.parseInt(input);
  20.                         input = JOptionPane.showInputDialog
  21.                 ("How much add ");
  22.         double add = Integer.parseInt(input);

  23.         staff.add(new Emplogee("A",k,add));
  24.         staff.add(new Emplogee("B",k1,add));
  25.         staff.add(new Emplogee("c",k2,add));

  26.         Arrays.sort(staff);  //java.util.Arrays

  27.         for(int i = 0; i < staff.size();i++)
  28.              { Emplogee e = (Emplogee)staff.get(i);
  29.                      e.getAdd(add);
  30.              }        
  31.         for(int i = 0;i < staff.size(); i++)
  32.                 {Emplogee e =(Emplogee) staff.get(i);
  33.                 System.out.println("name" + e.getName() + ",Omoney" + e.getOmoney() + ",Nmoney" + e.getNmoney());
  34.                 }
  35.         }
  36. }
  37. class Emplogee implements Comparable   //java.lang.Comparable
  38. {
  39.         public Emplogee (String n ,double s, double add)
  40.         {        name = n;
  41.                 money = s;
  42.                 Hadd = add;
  43.         }
  44.         public String getName()
  45.         {
  46.                 return name;
  47.         }
  48.         public double getOmoney()
  49.         {
  50.                 return money;
  51.         }
  52.         public double getNmoney()
  53.         {
  54.         return Hadd;
  55.         }
  56.         public void  getAdd(double byPercent)
  57.         {
  58.                 double raise = money * byPercent / 100;
  59.                 Hadd = raise + money;
  60.         }

  61. /**bi jiao shi yong "Hadd" zhe ge shu
  62. */
  63.         public int CompareTo(Object otherObject)
  64.         {
  65.         Emplogee other = (Emplogee)otherObject;
  66.         if (Hadd < other.Hadd) return -1;
  67.         if (Hadd > other.Hadd) return 1;
  68.         return 0;
  69.         }
  70.         private String name;
  71.         private double money;
  72.         private double Hadd;
  73. }
复制代码
发表于 2005-1-31 23:21:47 | 显示全部楼层
把错误信息贴出来...
如果是因为函数或类的名字冲突了,可以用全限定类名来解决
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-2-1 11:02:53 | 显示全部楼层
可能就是函数和类的冲突

下面是我的
错误代码

  1. [root@localhost woxiede]# javac AdminHouro.java
  2. AdminHouro.java:29: cannot resolve symbol
  3. symbol  : method sort (java.util.ArrayList)
  4. location: class java.util.Arrays
  5.         Arrays.sort(staff);  //java.util.Arrays
  6.               ^
  7. AdminHouro.java:41: Emplogee is not abstract and does not override abstract method compareTo(java.lang.Object) in java.lang.Comparable
  8. class Emplogee implements Comparable   //java.lang.Comparable
  9. ^
  10. 2 errors
复制代码
回复 支持 反对

使用道具 举报

发表于 2005-2-1 13:14:44 | 显示全部楼层
Arrays.sort(Object obj);
obj没有List 或者ArrayList的形式参数,使用数组放置你的Emplogee
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-2-1 16:07:30 | 显示全部楼层
原来是这样亚

谢谢你,一直回我的问题~~~多谢

祝你新年快乐
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表