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代码重构的机巧

  • 相关阅读:
    mysql concat
    (三)微信小程序之发送服务通知(模板消息)
    小型web服务器thttpd的学习总结(下)
    小型web服务器thttpd的学习总结(上)
    平方根倒数快速算法
    微信公众平台服务框架
    静态库动态库回顾
    RocketMQ常用命令
    rocketmq配置文件参数(broker-xx.properties)
    RocketmMQ的组成及相关概念
  • 原文地址:https://www.cnblogs.com/bestmoment/p/9185991.html
Copyright © 2011-2022 走看看