提示:您可在线编辑运行本教程的实例 - 运行实例,去试试!
父类的公共方法和字段
/*from N o w J a v a . c o m*/ public class AlphaTwo extends Alpha { public static void main(String[] args) { Alpha a = new Alpha(); //a.privateMethod(); //illegal //a.packageMethod(); //illegal //a.protectedMethod(); //illegal a.publicMethod(); //legal //System.out.format("privateVariable: %2d%n", // a.privateVariable); //illegal //System.out.format("packageVariable: %2d%n", // a.packageVariable); //illegal //System.out.format("protectedVariable: %2d%n", // a.protectedVariable); //illegal System.out.format("publicVariable: %2d%n", a.publicVariable); //legal AlphaTwo a2 = new AlphaTwo(); a2.protectedMethod(); //legal System.out.format("protectedVariable: %2d%n", a2.protectedVariable); //legal } } /** 时 代 J a v a 公 众 号 - nowjava.com 提供 **/ class Alpha { //member variables private int privateVariable = 1; int packageVariable = 2; //default access protected int protectedVariable = 3; public int publicVariable = 4; //methods private void privateMethod() { System.out.format("privateMethod called%n"); } void packageMethod() { //default access System.out.format("packageMethod called%n"); } protected void protectedMethod() { System.out.format("protectedMethod called%n"); } public void publicMethod() { System.out.format("publicMethod called%n"); } public static void main(String[] args) { Alpha a = new Alpha(); a.privateMethod(); //legal a.packageMethod(); //legal a.protectedMethod(); //legal a.publicMethod(); //legal System.out.format("privateVariable: %2d%n", a.privateVariable); //legal System.out.format("packageVariable: %2d%n", a.packageVariable); //legal System.out.format("protectedVariable: %2d%n", a.protectedVariable); //legal System.out.format("publicVariable: %2d%n", a.publicVariable); //legal } }