原创

JavaSE-面向对象之继承

温馨提示:
本文最后更新于 2024年07月21日,已超过 271 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
  • 继承是什么
    • 重用现有的类来生成新类的一种特征;
    • 通俗地讲就是从现有的类(即父类或基类)创建新类(子类或派生类)的过程。
  • 继承时构造方法的调用
    • 继承是调用方法是使用super();调用,而且在构造方法的第一行,如果没有写构造super(),jvm会自动添加一个super();调用父类无参的构造方法。如果写了super();则是调用父类对应参数的构造方法。
  • super关键字的作用
    • super就相当于调用本类时的this关键字,可以调用父类的构造方法,父类的成员变量,成员方法。
  • Java中继承的特点
    • 单继承,不能逆向继承,就像是我继承了你,你不能再继承我。而且也不能继承多个类。
  • 方法重写时注意事项
    • 权限修饰符的权限只能扩大,不能缩小,返回值类型要一样,参数类型和个数要一样,最主要的是方法名要一样。
    • 可以在方法前加@Override检测是否构成了重载。
  • final关键字及常量
    • final修饰类时,这个类不能被别的类继承。
    • 修饰成员变量时,一定要初始化,只能被赋值一次。
      • 常量命名字母全部大写,多个单词之间用_间隔。一般这样定义:public static 常量类型 常量名 = 常量值;

    • 修饰形参时,
      • 如果这个形参是基本数据类型,这个参数只能通过传入赋值,在方法内部不能赋值。
      • 如果是引用数据类型,则是在方法内可以改变值,但是改变值不能让内存地址改变,也就是说,这时候内存地址只能通过传入。
    • 修饰方法的时候,这个方法不能被重写。
  • 访问修饰符的权限
    • public 公共的,所有地方都可以访问
    • protected 保护的,在同一个包中和不同包中继承关系可以访问
    • default(默认的,不写修饰符) 在同一个包中的类可以访问
    • private 私有的,类的内部可以访问
本类 同一个包中 子类 不同包中
public 可以 可以 可以 可以
protected 可以 可以 可以 不可以
default 可以 可以 不可以 不可以
private 可以 不可以 不可以 不可以
正文到此结束