java中的封装,继承,多态
1封装
(1)定义:程序的设计要求,高内聚,低耦合。封装主要是通过属性私有,get/set
(2)作用:
a:提高程序的安全性,保护数据
b:隐藏代码的实现细节
c:统一接口
d:提高代码的可维护性
2继承
(1)java中的关键字,extends表示继承关系,子类extend父类,子类值父类的‘扩展’关系。
(2)子类可以继承父类的所有方法(公有的方法,属性)
(3)Ctrl+H:可以查看类的继承关系
(4)在java中所有的类默认继承Object类(所有类的父类,超类)
(5)java中只有单继承,没有多继承
(6)super关键字:用来调用父类的方法和使用父类的属性(公有的,public的,无法调用private的)
注意点:
a:super调用父类的构造方法,必须再子类的构造器第一行
b:super只能出现在子类的方法和构造器中
c:super和this不能同时调用构造方法
(7)this:代表本身这个对象,super:代表父类的对象 this():本类的构造方法 super():父类的构造方法,super只能在继承关系中使用
(8)重写方法(前提:存在继承关系中,方法名必须相同,参数列表必须相同,修饰符:范围可以扩大,但是不能缩小)
a:非静态的方法才能重写,并且方法只能是public的,不能是私有private的
b:抛出的异常可以被缩小,但是不能被扩大(后续解释)
3多态
(1)定义:父类的引用指向子类的对象
(2)父类 f = new 子类()虽然指向子类,但是不能调用子类特有的方法
(3)方法的多态,并不是属性的多态
(4)必须存在于继承关系中
(5)不能被重写的方法
a:static,final,private修饰的方法不能被重写
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!