日期:2014-05-20 浏览次数:20655 次
class Base{ public void hello(){ System.out.print("Hello in Base"); } public void welcome(){} } class Sub extends Base{ public void hello(){ System.out.print("Hello in Sub"); } public void welcome(){ System.out.print("Welcome in Sub"); } public static void main(String[] args){ Base b=new Sub(); b.hello(); b.welcome(); }
------解决方案--------------------
class Base { public void hello() { System.out.print("Hello in Base"); } public void welcome() { System.out.print("Welcome in Base"); } } class Sub extends Base { public void hello() { System.out.print("Hello in Sub"); } public void welcome() { System.out.print("Welcome in Sub"); } } public static void main(String[] args) { Test1.Base b = new Test1().new Sub(); b.hello(); b.welcome(); }
------解决方案--------------------
主要是缺少了一个welcome()的方法,这个方法在父类和子类中都可以的.
另外你这里父类的方法hello()被子类的方法覆盖了.这就体现了java的多态性,
一个方法可以有多种实现形式.
至于怎么该方法很多也不知道你具体要问什么啊?
------解决方案--------------------
编译都不会通过,找不到welcome方法,
如5楼 修改 可以,但是否达到你要的那个意思???
------解决方案--------------------
你在父类中没有写WELCOME方法,所以子类无法继承并重写该方法
------解决方案--------------------
bd