zoukankan      html  css  js  c++  java
  • 抽象的使用

    其中一种使用:

    本来是这样的:

    /存储Int的集合类  
    public class IntArrayList{  
        private int[] dataSet;  
        public  IntArrayList(int size){  
            dataSet = new int[size];  
        }  
        public int get(int position){  
            return dataSet[position];  
        }  
      
        public void add(int pos ,int data){  
            dataSet[pos] =data;  
        }  
        public int size(){  
            return dataSet.length;  
        }  
    }  
    //存储String的集合类  
    public class StringArrayList{  
        private String[] dataSet;  
        public StringArrayList(int size){  
            dataSet = new String[size];  
        }  
        public String get(int position){  
            return dataSet[position];  
        }  
        public void add(int pos ,String data){  
            dataSet[pos] = data;  
        }  
        public int size(){  
            return dataSet.length;  
        }  
    }  

    然后我们可以使用泛型定义:抽象类SimpleArryList:

    public class SimpleArrayList<T> {  
        private T[] dataSet;  
        public SimpleArrayList(int size){  
            dataSet = (T[]) new Object[size];  
        }  
        public T get(int position){  
            return dataSet[position];  
        }  
        public void add(int pos ,T data){  
            dataSet[pos] = data;  
        }  
        public int size(){  
            return dataSet.length;  
        }  
    }  

    使用:

    /方法一  
    //使用IntArrayList  
    IntArrayList intArr = new IntArrayList(2);  
    intArr.add(0,3);  
    intArr.add(1,55);  
    System.out.println(intArr.get(1));  
    //使用StringArrayList  
    StringArrayList strArr = new StringArrayList(3);  
    strArr.add(0,"hello");  
    System.out.println(strArr.get(0));  
      
    //方法二  抽出来之后  
    //使用SimpleArrayList 存储整型  
    SimpleArrayList<Integer> intArrayList = new SimpleArrayList<>(3);  
    intArrayList.add(0,3);  
    intArrayList.add(1,55);  
    System.out.println(intArrayList.get(1));  
      
    //使用SimpleArrayList存储String  
    SimpleArrayList<String> strArrayList = new SimpleArrayList<>(3);  
    strArrayList.add(0,"hello , SimpleArrayList");  
    System.out.println(strArrayList.get(0));  

    转自https://blog.csdn.net/u011889786/article/details/51865344代码重构的机巧

  • 相关阅读:
    园 首页 新随笔 联系 管理 订阅 订阅 RTSP协议转换RTMP直播协议
    sequence diagram
    Model Binding
    asp.net mvc
    系统日志和异常的处理①
    随机森林之oob error 估计
    Extjs相关知识点梳理
    Extjs报错处理
    webbrowser在html中写入内容并添加js
    tcpdump一个命令的剖析
  • 原文地址:https://www.cnblogs.com/bestmoment/p/9185991.html
Copyright © 2011-2022 走看看