java封装 继承 多态 重写 重载

  • 继承
    在java中继承的关键字是:extends
    继承可以获得父类的属性和方法而且子类还可以具有自己的特殊的功能。
    ** 例:这是一个圆

    public class Circle {

      private double radius; 
       public Circle(double r){
      this.radius=r;
    

    }
    圆有半径的属性

    public class Cylinder extends Circle{
    private double hight;
    public Cylinder(double r,double h) {
    super®;
    hight=h;
    }

这是一个圆柱,圆柱继承了圆,圆柱也有了半径的属性,而且圆柱还有自己特殊的高

** 在java中支持单继承,一个子类只能有一个父类,但是一个父类可以有多个子类。
不支持多继承的原因:如果两个父类多同样的方法,子类继承之后,调用的时候,会出现不确定性。不知道调用哪一个
java还支持多重继承:
例如:A extends B,B extends C
** this和super
当局部变量和成员变量同名用this
当子类变量和父类变量同名用super

  • 多态
    一种事物多种形态
    例如:a=new Dog();
    父类的引用指向子类的对象
  • 多态分为编译时和运行时
    例如:Animal a=new Dog();
    编译时:javac 编译器认为他是一个动物,因此只能调用动物的方法
    运行时:java 运行时又会找具体的实现类(Dog),就是会认为他是一条狗
  • 多态在之后在写方法的时候,参数类型一般是父类的,如果调用了子类特有方法,只能是子类的。
  • 封装
    封装是方法选择性的暴露
    有权限修饰符
    ![权限修饰符的访问权限] (https://img-blog.csdn.net/20170613235336475?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3ExMDUxODUyNTcy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
    重载(overload)
    在同一个类中方法名相同,但是方法中的参数列表不同
    重写(override)
    在重写父类方法的时候:要注意返回值、方法名、参数列表必须和父类的一致。
    父类中的功能不满足子类的需求的时候,需要重写
    在重写的时候子类修饰符方法的权限一定要大于父类修饰符方法的权限,例如:父类是默认的(default)子类必须大于这个修饰符,子类(public)的。
    重写也叫覆盖。
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值