码迷,mamicode.com
首页 > 其他好文 > 详细

第10章 接口、继承与多态 类的继承

时间:2015-05-25 16:01:04      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

1Test2类继承Test类,在子类中可以连同初始化父类构造方法来完成子类初始化操作,既可以在子类的构造方法中使用super()语句调用父类的构造方法,也可以在子类中使用super关键字调用父类的成员方法等,但是子类没有权限调用父类中被修饰为private的方法,只可以调用父类中修饰为public或protected的成员方法等。

2继承并不只是扩展父类的功能,还可以重写父类的成员方法。重写(还可以称为覆盖)就是在子类中将父类的成员方法的名称保留,重写成员方法的实现内容,更改成员方法的存储权限,或是修改成员方法的返回值类型。当重写父类方法时,修改方法的修饰权限只能从小的范围到大的范围改变。

3在继承中还有一种特殊的重写方式,子类和父类的成员方法返回值、方法名称、参数类型及个数完全相同,唯一不同的是方法实现内容,这种特殊重写方式被称为重构

package ten;

class Test {
    public Test(){//构造方法
    }
    protected void doSomething(){//成员方法
    }
    protected Test doIt(){//访问返回值类型为Test类型
        return new Test();
    }
}
class Test2 extends Test{  //如果在class之前加上public,就会报错,因为Test的权限是只有一个包中的类可以调用这个类的成员变量或成员方法,如果加上public,意思是子类Test2的权限比父类Test的权限范围大了,所以报错
    public Test2(){
        super();//调用父类的构造方法
        super.doSomething();//调用父类成员方法
    }
    public void doSomethingnew(){//新增方法
    }
    public void doSomething(){//重写父类方法
    }
    protected Test2 doIt(){ //重写父类方法,方法返回值类型为Test2类型
        return new Test2();
    }
}

 

第10章 接口、继承与多态 类的继承

标签:

原文地址:http://www.cnblogs.com/chamie/p/4527837.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!