zoukankan      html  css  js  c++  java
  • Java继承

    public class Employee {
    	public static String superStr = "SUPERSTR";
    
    	public String test() {
    		return "SUPERTEST";
    	}
    
    	public String test2() {
    		return "SUPERTEST2";
    	}
    }
    
    

    public class Manager extends Employee {
    
    	public static void main(String[] args) {
    		System.out.println(superStr);// 直接訪问父类域
    		Manager mgr = new Manager();
    		String t1 = mgr.test();// 直接訪问父类方法
    		String t2 = mgr.test2();// 覆盖父类方法
    		System.out.println(t1 + "
    " + t2);
    	}
    
    
    	@Override
    	public String test2() {
    		return super.test2() + "#test2";
    	}
    }
    父类Employee有public的域和方法,子类Manager覆盖了父类的一个方法。从代码中的凝视可清楚地知道:子类可直接訪问父类的公有域或方法。但若子类覆盖了父类的域或方法,就按覆盖的本意来。


    输出结果:

    SUPERSTR
    SUPERTEST
    SUPERTEST2#test2

    简单来说,上面的Manager继承Employee后,它的代码实质上等同于:

    public class Manager extends Employee {
    	//***********父类域**************************
    	public static String superStr = "SUPERSTR";
    
    	public String test() {
    		return "SUPERTEST";
    	}
    
    	/*public String test2() {
    		return "SUPERTEST2";
    	}*/
    	//***********父类域**************************
    	public static void main(String[] args) {
    		System.out.println(superStr);// 直接訪问父类域
    		Manager mgr = new Manager();
    		String t1 = mgr.test();// 直接訪问父类方法
    		String t2 = mgr.test2();// 覆盖父类方法
    		System.out.println(t1 + "
    " + t2);
    	}
    
    	@Override
    	public String test2() {
    		return super.test2() + "#test2";
    	}
    }

    继承设计技巧:

    1)将公共操作和域放置在超类

    2)不要使用受保护的域(protected)

    3)使用继承实现"is-a"关系

    4)除非全部继承的方法都有意义,否则不要使用继承

    5)在覆盖方法的时候,不要改变预期的行为

    6)使用多态。而非类型信息

    7)不要过多地使用反射

  • 相关阅读:
    [蓝桥杯][基础练习VIP]完美的代价
    [蓝桥杯][基础练习VIP]分解质因数
    [蓝桥杯][基础练习VIP]Sine之舞
    [蓝桥杯][基础练习VIP]回形取数
    ZJOI 2006 书架
    HNOI2012 永无乡
    9.23 逃跑的牛Barn Running Away
    9.20 Magical multisets
    9.18 Roads on a kingdom
    【MySQL】MySQL复制表的两种方法
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/7084424.html
Copyright © 2011-2022 走看看