zoukankan      html  css  js  c++  java
  • 关于子类实例化父类对象

    以Collection接口为例:

    Collection接口有两个子接口——List接口和Set接口.

    其中,ArrayList是List接口的子类.

    因此,既可以用ArrayList为上一层的List接口实例化,

    也可以为上上层的Collection接口实例化.

    子接口肯定比父接口的方法多(因为子接口扩充了父接口的方法),

    因此,实例化Collection接口所能调用的方法,肯定比实例化ArrayList接口所能调用的方法少.

    package prepare1;
    
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.List;
    
    interface A{
    	public void func1();
    	public void func2();
    }
    
    class B implements A{
    
    	@Override
    	public void func1() {
    		System.out.println("一号方法");
    		
    	}
    
    	@Override
    	public void func2() {
    		System.out.println("二号方法");
    		
    	}
    	
    	public void func3() {
    		System.out.println("三号方法");
    	}
    	
    }
    public class Test {
        public static void main(String[] args) {
            A a = new B();//实例化接口A
            B b = new B();//实例化普通类B
            
            //如果实例化的是接口,则只能调用接口中的方法
            a.func1();
            a.func2();
            
            //如果实例化的是类,则既可以调用父接口的方法,也可以调用自己内部定义的方法
            b.func1();
            b.func2();
            b.func3();
    
        }
    }
    

      

  • 相关阅读:
    LFU
    poj 3581 -- 后缀数组
    leetcode 679
    poj 两条线段接雨水
    poj 1696极角排序
    判断平面上是否有一条直线与所有线段相交
    洛谷P3808 【模板】AC自动机(简单版)
    Most Distant Point from the Sea UVA
    P2742 [USACO5.1]圈奶牛Fencing the Cows /【模板】二维凸包
    P2249
  • 原文地址:https://www.cnblogs.com/ssC2H4/p/8528820.html
Copyright © 2011-2022 走看看