java子类继承父类的方法

  • 子类与基类在同一包中:子类可以继承父类的public、protected、default修饰的成员变量和方法

  • 子类与基类不在同一包中:子类只继承父类的public protected修饰的成员变量和方法

父类A,子类B 不在同一包,子类C 在同一包

package testExcel;

public class A {
    public int x = 5;
    protected int y = 8;
    int p;
    private int q;

    public void getPublic(){
        System.out.print("public fun");
    }
    protected void getProtected(){
        System.out.print("protected fun");
    }
    void getDefault(){
        System.out.println("default fun");
    }
    private void getPrivate(){
        System.out.println("private fun");
    }
}
package child;

import testExcel.A;

public class B extends A{

    int getPublicX(){
        return x;
     }
    int getProtectedY(){
        return y;
     }
//    int getDefaultP(){
//        return p; // 不能访问
//     }
//    int getPrivateQ(){
//        return q; // 不能访问
//     }
    public static void main(String[] args) {
        B b = new B();
        b.getPublic();
        b.getProtected();
    }

}
package testExcel;

import testExcel.A;

public class C extends A{

    int getPublicX(){
        return x;
     }
    int getProtectedY(){
        return y;
     }
    int getDefaultP(){
        return p;
     }
    //    int getPrivateQ(){
    //        return q; // 不能访问
    //     }
    public static void main(String[] args) {
        C c = new C();
        c.getPublic();
        c.getProtected();
        c.getDefault();
    }

}

 

上一篇:PHP中 private、public、protected的区别


下一篇:C#中,代码能不能访问到private或protected的成员,和当前代码是不是在类型(类、结构体)中有关,和当前代码是不是在类型(类、结构体)的对象实例中无关