吴裕雄--天生天然JAVA面向对象高级编程学习笔记:继承的应用

class Array{        // 表示数组
    private int temp[] ;        // 整型数组
    private int foot ;    // 定义添加位置
    public Array(int len){ if(len>0){ this.temp = new int[len] ; }else{ this.temp = new int[1] ;    // 最少维持空间是1个
 } } public boolean add(int i){    // 增长元素
        if(this.foot<this.temp.length){    // 还有空间
            this.temp[foot] = i ;    // 增长元素
            this.foot ++ ;// 修改脚标
            return true ; }else{ return false ; } } public int[] getArray(){ return this.temp ; } }; class SortArray extends Array{    // 排序类
    public SortArray(int len){ super(len) ; } public int[] getArray(){    // 覆写方法
        java.util.Arrays.sort(super.getArray()) ;    // 排序操做
        return super.getArray() ; } }; class ReverseArray extends Array{    // 反转操做类
    public ReverseArray(int len){ super(len) ; } public int[] getArray() { int t[] = new int[super.getArray().length] ;    // 开辟一个新的数组
        int count = t.length - 1 ; for(int x=0 ;x<t.length;x++){ t[count] = super.getArray()[x] ;    // 数组反转
            count-- ; } return t ; } }; public class ArrayDemo{ public static void main(String args[]){ // ReverseArray a = null ; // 声明反转类对象 // a = new ReverseArray(5) ; // 开辟5个空间大小
        SortArray a = null ; a = new SortArray(5) ; System.out.print(a.add(23) + "\t") ; System.out.print(a.add(21) + "\t") ; System.out.print(a.add(2) + "\t") ; System.out.print(a.add(42) + "\t") ; System.out.print(a.add(5) + "\t") ; System.out.print(a.add(6) + "\t") ; print(a.getArray()) ; } public static void print(int i[]){    // 输出数组内容
        for(int x=0;x<i.length;x++){ System.out.print(i[x] + "、") ; } } };
相关文章
相关标签/搜索