通过多态生成对象和直接创建对象的区别

来源:互联网 发布:淘宝修改中差评步骤 编辑:程序博客网 时间:2024/05/22 05:34
这是父接口,写了两个test方法。
package com.wjc.Nio;/** * Created by wang.jiancheng on 2017/8/4. */interface InterParent {    public void test1();    public void test2();}
这是子类,实现了父接口的方法后自己也写了个test方法。
package com.wjc.Nio;/** * Created by wang.jiancheng on 2017/8/4. */public class child implements InterParent{    public void test2() {        System.out.println("我是子类重写父类方法的test2----");    }    public void test1() {        System.out.println("我是子类重写父类方法的test1----");    }    public void test() {        System.out.println("我是子类本身的test");    }    public static void main(String[] args) {        InterParent i = new child();        child c = new child();    }}随后便可以看到i这个对象只有InterParent的test1方法和test2方法,但是调用的是child的实现。
但是c这个对象不仅有test1方法和test2方法,还有自己本身的test方法。
总结:通过接口多态生成一个子类,生成的对象里只有父接口的方法,但是方法的实现的子类的。
但是直接通过本身创建自己的对象,就会有所有的方法。(好像是废话。。。)
阅读全文
1 0