zoukankan      html  css  js  c++  java
  • 方法重载,重写,final修饰符

    方法重载(两同一不同)

    • 同一个类中,方法名相同,形参列表不同

    至于返回值类型,访问修饰符与方法重载没有任何关系

    可变参数列表

    可变参数必须是最后一个参数
    带可变参数的方法最后被访问(调用)
    数组可以传给可变参数,反之不行
    同类型数组与可变参数无法构成方法重载
    一个方法只能有一个可变参

    方法重写(两同两小一大)

    • 方法名 相同,形参列表 相同
    • 子类方法 返回值类型 必须比父类方法返回值类型“更小”或相等;
    • 子类方法 抛出的异常 比父类方法声明抛出的异常“小”或相等
    • 子类方法的 访问权限 比父类大或相等
    • 父类中静态方法无法被子类重写

    当子类重写了父类的方法后,子类对象将无法访问父类中被重写的方法,但是可以调用(super)

    如果父类方法具有private访问权限,该方法对子类是隐藏的,子类无法重写

    final修饰符

    • final不能修饰构造方法
    • final修饰类,该类不允许被继承
    • 系统不会对 final修饰的成员变量(包括类变量和实例变量) 隐式的初始化
    • final修饰的局部变量在定义时可以不指定初始值,在之后的代码中赋值且只能赋值一次
    • final修饰基本类型变量不能对基本类型变量重新赋值,final修饰引用类型变量,final只保证引用变量引用的地址不会改变
    • final修饰的成员变量必须显示的指定初始值(只能在 非静态初始化块 或 声明该实例变量 或 构造器 中指定初始值),
    • final修饰类变量,(必须且只能在) 静态初始化块中指定初始值 或 声明该变量时指定初始值

    不管是类变量还是实例变量还是局部变量,当满足条件:

    使用final修饰符

    在定义该变量时指定了初始值

    该初始值在编译时就被确定下来

    则该变量相当于一个直接量

  • 相关阅读:
    CF 640(div4)
    ABC 166
    CF 637 div2
    HDU-1875 畅通工程再续
    POJ1251-Jungle Roads
    POJ1797 Heavy Transportation
    Gym-101911K Medians and Partition
    Gym-101911A Coffee Break
    【Vue】Re09 Webpack 第一部分(介绍、安装、配置)
    【Vue】Re08 模块化
  • 原文地址:https://www.cnblogs.com/moomcake/p/11667837.html
Copyright © 2011-2022 走看看