override1.java

来自「提供了常用的JAVA技术的示例」· Java 代码 · 共 63 行

JAVA
63
字号
// 修改 5-19 中子类 B 中的 multiply() 方法// 如果将 class B 的int geti() 去掉,也能返回 i=7package OverRide1;class A{    int i,j;    A(){}    A(int i,int j){        this.i=i;        this.j=j;    }    void setIJ(int i,int j){        this.i=i;        this.j=j;    }    int multiply(){        return i*j;    }    int geti(){        return i;    }}class B extends A{    int i,k,j; // i=2 k=6    B(int i,int j,int k){// j=1        super(i,j);        this.i=i;        this.k=k;        //this.j=j;    }    int multiply(int l){        return i*j*k*l;    }    int geti(){        //return super.i;  // 7 或者 将geti() 去掉        return this.i; //2    }}public class OverRide1 {    public static void main(String a[]){        B subo=new B(2,1,6); // i=2   j=1  k=6        A supero=new A(4,5);        subo.setIJ(7,8);  //i=7(隐 藏)  j=8   设置A中的i,j        //supero.setIJ(4,5);        System.out.println("supero.i="+supero.i); //4        System.out.println("supero.j="+supero.j); // 5        System.out.println("subo.i="+subo.i); // 2        System.out.println("subo.j="+subo.j); // 8        System.out.println("subo.k="+subo.k); // 6        System.out.println("subo.multiply()="+subo.multiply()); // 56=7*8        System.out.println("supero.multiply()="+supero.multiply()); // 20=4*5        System.out.println("subo.multiply(2)="+subo.multiply(2));        // 192 = 2*8*6*2        System.out.println("supero.geti()="+supero.geti()); // 4        System.out.println("subo.geti()="+subo.geti()); // 7   }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?