java继承

继承就是对某些类的抽象,就是代码的复用

Java的继承时单继承,就是一个子类只能有一个父类;

  1. private 私有

    • 子类继承不到,完全拿不到
    • 只能父类自己用
  2. 默认权限(啥都不写)

    • 同包下:能继承
    • 不同包:不能继承
  3. protected 受保护

    • 不管同包不同包,子类全都能继承
    • 跨包也能继承
  4. public 公开

    • 任何地方都能继承,随便用

super

  1. 本质

super 代表父类对象 this 代表当前子类对象 super 代表父类对象

  1. 三大用法

① 调用父类构造方法(最常用)

格式:super();

  • 必须写在子类构造第一行

  • 作用:先调用父类无参构造,再执行子类构造

  • 有参:super(实参); 调用父类有参构造

只能在子类的方法或者构造方法中

this()本类的构造

super()父类的构造

多态

父类的引用指向子类的对象

方法重写
  1. 是什么

子类重新写一遍父类已经有的方法 父类有这个方法,子类觉得不好用,重新改写内容,就是重写。

  1. 重写满足 4 个条件

  2. 继承关系:必须子类继承父类

  3. 方法名一模一样

  4. 参数列表一模一样

  5. 返回值一致

  6. 权限要求

子类权限 不能比父类更小

  • 父类 public → 子类只能 public
  • 父类 protected → 子类可用 protected/public

private 方法不能被重写!

父类的方法不满足子类的需要

多态的注意情况

1 子类继承父类,子类重写了父类的方法,子类可以调用父类的独有方法,和自己重写过的方法

2 父类的引用指向子类的对象

这个变量虽然是父类型,但是是子类对象,调用时,他调用被重写的方法的时候,是调用的子类的方法,而且不能调用子类独有的方法,只能用父子类共有的方法,也就是子类重写过的父类的方法

3必须有继承关系,子类重写父类方法,父类引用指向子类对象才能实现多态

同一个方法根据对象类型的不同采取不同的行为方式

父类型父类对象父类方法

子类型子类对象 子类和父类方法

父类型子对象 父子类共有的方法

instancesof

作用:判断 左边对象 是不是 右边这个类型 中文:是不是、属于

把子类转换为父类,向上转型,直接转

把父类转换为子类,向下转型,需要强制转换,需要先判断能不能转

向上转型后子类独有的方法不能用

static final

在当前类里面,访问静态方法不用类名可以直接调用,

代码块的执行顺序

静态代码块

代码块

构造器

静态代码块只执行一次

创建对象的时候,就把类中的静态代码块,代码块,构造方法一起执行

static修饰的都是属于类的

用final修饰之后的类不能被继承,

相关推荐
程序员黑豆1 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
风流 少年2 小时前
Spring AI 2.0:Memory
java·后端·spring
码匠许师傅2 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
2603_965148112 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
小席是个热心肠3 小时前
AI相关的自我学习
java·人工智能·学习
知无不研5 小时前
lambda表达式的使用(3)
开发语言·c++·lambda
数智化管理手记5 小时前
海量数据如何沉淀有效数据资产?数据标准化治理方案如何搭建?
java·大数据·人工智能
cfm_29145 小时前
SpringAI + Ollama 本地大模型
java·开发语言·人工智能·语言模型
鲸采云SRM采购管理系统6 小时前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库
C++ 老炮儿的技术栈7 小时前
基于Qt实现轻量化本地音乐播放器
开发语言·c++·qt·c·播放器·音乐