• ArrayList、HashMap 与 员工类(程序员、经理的结合使用) 相当于集合与继承的总结


      1 package Day28ketangzuoye;
      2 
      3 import java.util.ArrayList;
      4 import java.util.HashMap;
      5 import java.util.Map;
      6 
      7 public class EmployeeTest {
      8 
      9     public static void main(String[] args) {
     10         Emp se1=new SE(0001,"蔡正",true,6000,80);
     11         Emp se2=new SE(0002,"丁陆",true,7000,89);
     12         
     13         Emp pm1=new PM(1001,"王拥江",true,9000,"一年",3000);
     14         Emp pm2=new PM(1002,"贝杰明",true,13000,"七年",5000);
     15         
     16         System.out.println("ArrayList");
     17         ArrayList<Emp> list=new ArrayList<Emp>();
     18         list.add(se1);
     19         list.add(se2);
     20         list.add(pm1);
     21         list.add(pm2);
     22         SE e;
     23         PM m;
     24         for(Emp p:list){
     25             if(p instanceof SE){
     26                 e=(SE)p;
     27                 e.show();
     28             }else if(p instanceof PM){
     29                 m=(PM)p;
     30                 m.show();
     31             }else{
     32                 System.out.println("出错!");
     33             }
     34         }
     35         
     36         System.out.println("
    
     HashMap");
     37         Map<String,Emp> map=new HashMap<String,Emp>();
     38         map.put("蔡正",se1);
     39         map.put("丁陆",se2);
     40         map.put("王拥江",pm1);
     41         map.put("贝杰明",pm2);
     42         String[] str={"蔡正","丁陆","王拥江","贝杰明"};
     43         Emp p;
     44         for(int i=0;i<map.size();i++){
     45              p=map.get(str[i]);
     46             if(p instanceof SE){
     47                 e=(SE)p;
     48                 e.show();
     49             }else if(p instanceof PM){
     50                 m=(PM)p;
     51                 m.show();
     52             }else{
     53                 System.out.println("出错!");
     54             }
     55         }
     56         
     57     }
     58 }
     59 
     60 class Emp {
     61     public  int id;
     62     public  String name;
     63     public  boolean gender;
     64     public  double salary;
     65 
     66     
     67     public Emp() {
     68         super();
     69     }
     70 
     71     public Emp(int id, String name, boolean gender, double salary) {
     72         super();
     73         this.id = id;
     74         this.name = name;
     75         this.gender = gender;
     76         this.salary = salary;
     77     }
     78 
     79     public void show(){};
     80 }
     81 
     82 class SE extends Emp {
     83     int hot;
     84 
     85     public SE(int id, String name, boolean gender, double salary,int hot) {
     86         super(id,name,gender,salary);
     87         this.hot = hot;
     88     }
     89 
     90     @Override
     91     public void show() {
     92         System.out.println("SE [id=" + id + ", name=" + name + ", gender="
     93                 + gender + ", salary=" + salary + ", hot=" + hot + "]");
     94     }
     95 }
     96 
     97 class PM extends Emp{
     98     String exp;
     99     double bonus;
    100     
    101     
    102     public PM(int id, String name, boolean gender, double salary,String exp, double bonus) {
    103         super(id,name,gender,salary);
    104         this.exp = exp;
    105         this.bonus = bonus;
    106     }
    107 
    108 
    109     @Override
    110     public void show() {
    111         System.out.println("PM [id=" + id + ", name=" + name + ", gender="
    112                 + gender + ", salary=" + salary + ", exp=" + exp + ", bonus=" + bonus + "]");
    113     }
    114 }
     1 ArrayList
     2 SE [id=1, name=蔡正, gender=true, salary=6000.0, hot=80]
     3 SE [id=2, name=丁陆, gender=true, salary=7000.0, hot=89]
     4 PM [id=1001, name=王拥江, gender=true, salary=9000.0, exp=一年, bonus=3000.0]
     5 PM [id=1002, name=贝杰明, gender=true, salary=13000.0, exp=七年, bonus=5000.0]
     6 
     7 
     8  HashMap
     9 SE [id=1, name=蔡正, gender=true, salary=6000.0, hot=80]
    10 SE [id=2, name=丁陆, gender=true, salary=7000.0, hot=89]
    11 PM [id=1001, name=王拥江, gender=true, salary=9000.0, exp=一年, bonus=3000.0]
    12 PM [id=1002, name=贝杰明, gender=true, salary=13000.0, exp=七年, bonus=5000.0]
  • 相关阅读:
    计算几何模板1 点部分
    TTimerThread和TThreadedTimer(都是通过WaitForSingleObject和CreateEvent来实现的)
    dddd
    Ubuntu中查看硬盘分区UUID的方法(所有Linux目录的解释)
    VS2010对C++11的支持列表(感觉大部分都不支持)
    VC版本的MakeObjectInstance把WNDPROC映射到类的成员函数
    FpGrowth算法
    Go语言Web框架gwk介绍2
    页面缓存OutputCache
    jquery mobile扁平化设计样式--Jquery mobile Flat UI介绍
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/5917430.html
Copyright © 2020-2023  润新知