javase类
一个类里面只有属性和方法
类就是一个模型,模块化,抽象化,比如你写一个学生类,给他属性,属性在类里最好不要实例化(不要赋值,在调用它在赋值,类似于一个模板,人可以根据自己的需求进行赋值)。
使用new关键字,本质是在调用构造器 (只有new了,就会生成无参构造)用来初始化值
有参构造:一旦定义了有参构造,无参构造必须显示定义
alt + insert 生成构造器(constructor)
断点走流程的时候,走到一步赋值流程,当前处于这一行的时候,属性还未赋值,当走完这一行之后,赋值完成。
属性私有 private
println是一个标准的重载的实现。
在java中所有的类都默认,直接或者间接的继承了Object类,(子类继承了父类,就可以使用父类非私有的方法,这就是为什么我们明明没有定义一些方法任然可以用的原因
父类Object中有很多定义好的方法) 父类私有的属性和方法无法被子类继承
java中只有单继承,没有多继承(一个儿子,只能有一个父亲)
快捷键 ctrl+H 可以看类的结构
super 与 this对比
一个代表父类,一个代表当前类
如果有参数传递,而属性名之前没有this或者super调用,那么输出的属性值就是传进来参数的值
解释上一张图:super和this不能同时调用构造方法的原因是:他们调用构造方法的时候都必须写在第一行,第一行只有一行不同同时调用。
子类调用了父类的无参构造方法
重写都是方法的重写,与属性无关
重写不能是静态的方法
静态的:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)