可以算是重载
Super sub= new Sub();
是不会出错的,只要你不调用f(int i)
就不会有问题,派生类中实现的方法在基类中必须有定义
才可以使用你下面的那种运行是对象鉴定

解决方案 »

  1.   

    1、我也不知道是不是叫重载,反正你的意思我觉得是正确的
    2、Super sub = new Sub() 此时你只可以用到Super的接口,当然如果你有在子类中重载了父类的方法,那就会调用子类的方法
      

  2.   

    f();叫重载(override)
    f(int i);叫过载(overload)
    重载是针对父子关系的,而过载是针对平行关系使用的,过载只是参数列表的重定义,最常用到的过载的例子就是System.out.println。
      

  3.   

    楼主的概念混淆是由于中文书籍中对override和overload的不同译法导致的,
    override发生于继承,而overload发生于同一个类定义内
      

  4.   

    倒底叫不叫重载?
    但而java2 程序员学习指南上说重载必须在同一个类中,
      

  5.   

    f();叫覆盖(override)
    f(int i);叫重载(overload)覆盖是父子之间的相同方法
    重载是针对同类中的同名方法(参数列表不同)