继承的学习3

来源:互联网 发布:广州市知用中学高中部 编辑:程序博客网 时间:2024/06/13 23:56
范例:继承的应用
实例要求:
abc
本例主要用到的内容是:继承

具体的内容:
abc
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] + "、") ;
            }
      }
};

总结:应用了继承的各个概念,包括覆写,子类对象的实例化过程,排序操作,可以发现使用继承可以让代码得到重用。


0 0
原创粉丝点击