java学习-面向对象

面向对象:以类的方式组织代码。以对象的组织封装数据
特性:封装,继承,多态
break:跳出整个循环
continue:跳出一个循环
非静态调用用new,静态调用直接使用。

类与对象。
类中只包含两种东西:属性和方法
对象用来封装类的数据。

类中即使什么都没有也会纯在一个构造器
构造器作用:实例化初始值
使用new关键字必须要有构造器,使用new本质实在调用构造器
alt+insert自动创建构造器;
构造器方法名和类名相同,且没有返回值

封装:
private私有
1.提高程序安全性;
2.隐藏程序内部细节
3.统一接口
4.提高系统的可维护性
应用private时,创建get,set类用new来接受,然后输出

继承:
1.java只有单继承没有多继承
2.关键词:extends
3.子类继承父类用public
4.java中所有类默认继承object
5.私有的东西无法继承
6.调用父类的构造器必须在子类构造器的第一行
快捷键:ctrl+h
注意:
1.super是调用父类的构造方法
2.super只能出现在子类的构造方法中
3.super和this不能同时使用
VS this
前提:
this:没有继承也可以使用
super:必须要有继承才可使用
对象:
this:本类的对象
super:父类的应用
构造:
this:本类的构造
super:父类的构造

重写:
1.重写和静态没有任何关系
2.关键词只能是public
3.重写需要有继承关系,而且是子类重写父类
4.方法名相同,参数相同,修饰符范围可以扩大(pravate可以扩展为public,反过来不行)
5.抛出来的异常范围可以缩小,但是不能扩大
6.重写子类和父类必须一致 ,方法体不同
为什么重写:
1.父类的东西子类不一定需要

多态
1.new出来的对象是实际确定的,但是指向的引用类型是不确定的
2.多态是方法的多态,属性没有多态

instandof:
X instandof Y是否编译通过要看x和Y是否有父子关系

类型转换:
1.子类转换为父类可能会丢失一些方法
2.与基础类型转换类似
3.方便方法的调用,减少重复的代码
3.存在条件:有继承的关系,方法需要重写,父类引用指向子类对象(father s1=new son())

静态代码块:
1.只执行一次(

抽象类:
关键字:abstract
1.抽象类的所有方法,其子类继承以后必须实现其的实现方法,除非子类也是抽象类,那么由子子类实现
2.抽象类不能new',只能靠子类去实现

接口:
1.接口可以多继承
2.接口只能只有规范,自己无法写方法,实现约束和实现分离
3.接口的本质就是契约
关键字:interface
4.接口中的所有东西都是抽象的
5.接口都需要实现类
6.类实现接口的关键字implements
7.接口不能被实例化

posted @   离地一厘米的飞翔  阅读(16)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示