面向对象高级

来源:互联网 发布:软件工作室 编辑:程序博客网 时间:2024/04/29 16:19
  1. 在JAVA中使用extends关键字完成类的继承关系。操作格式:class 父类{}      class 子类extends 父类{}
  2. 在JAVA中只允许单继承,不能多继承。但可以多层继承。
  3. 面向对象高级 - 后知后觉 - 后知后觉的博客
     继承的目的:扩展类的功能。
  4. 子类对象在实例化之前必须先调用父类的构造方法,然后才调用子类的构造方法。
  5. JAVA中继承会默认调用super关键。而且必须是在子类构造方法的第一行。
  6. 扩大权限不属于复写方法。
  7. 方法的覆写与重载的区别。
    面向对象高级 - 后知后觉 - 后知后觉的博客
     
  8. this与super的区别。面向对象高级 - 后知后觉 - 后知后觉的博客
     super关键字和this关键字不能同时出现。
  9. 类的继承小例子

    package lianxijihe;

    import java.util.Arrays;

    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];
    }
    }

    public boolean add(int i){
    if(this.foot<this.temp.length){
    temp[foot] = i;
    foot++;
    return true;
    }else{
    return false;
    }
    }
    public int[] getArray(){
    return this.temp;
    }
    }

    class SortArray extends Array{

    public SortArray(int len) {
    super(len);
    // TODO Auto-generated constructor stub
    }
    public int[] getArray(){
    Arrays.sort(super.getArray());
    return super.getArray();
    }
    }
    class ReverseArray extends Array{

    public ReverseArray(int len) {
    super(len);
    // TODO Auto-generated constructor stub
    }
    public int[] getArray(){
    int temp;
    for(int i=0;i<super.getArray().length/2;i++){
    temp = super.getArray()[i];
    super.getArray()[i] = super.getArray()[super.getArray().length-i-1];
    super.getArray()[super.getArray().length-i-1] = temp;
    }
    return super.getArray();
    }
    }
    public class lianxi014 {
    public static void main(String args[]){
    Array test = new ReverseArray(5);
    test.add(1);
    test.add(2);
    test.add(3);
    test.add(4);
    test.add(5);
    print(test.getArray());

    }
    public static void print(int[] a){
    for(int i=0;i<a.length;i++){
    System.out.println(a[i]+",");
    }
    }
    }



0 0
原创粉丝点击