java面向对象是什么?常见的单例模式有哪两种?
目录
一. 面向对象的基本概念 ~O(∩_∩)O~
二. OOP设计原则 ~(*^▽^*)~
三. 设计模式 ┗( ▔, ▔ )┛
一. 面向对象的基本概念
1. 面向对象的世界观
世界是由各种各样的具有自己独特的运动规律和内部属性的对象组成,不同对象之间互相作用和通讯就形成了缤纷的世界
好处:更符合人对事物认识的规律
对象:比如 :一条小狗
对象间的交互:比如:一堆小狗相互交流
2. 类和对象
概念:类 用来封装数据,及处理这些数据的方法
类是抽象,而对象是具体
可以理解为显示中的模具(清朝钱币模具)
建模:对象 -- (抽象)--> 类
实例化:类 --(创建)--> 对象
类变量和实例变量:
类变量: static 修饰的变量成员变量 特点:可以通过类型访问
实例变量:没有static 修饰的成员变量 特点:必须通过实例对象访问
类中的static块:在类加载完成,进行初始化时执行,且整个生命周期只被执行一次,一般的
可用于资源初始化
修饰符:
public:访问权修饰词
abstract:抽象类,不能实例化对象
final:最终类,不能有子类
作用域 当前类 同一包中的类 子类孙类 其他包中的类 public √ √ √ √ protected(仅自己家族用) √ √ √ × friendly(默认) √ √ × × private √ × × ×
3. 继承
允许创建分等级层次的类
继承就是子类继承父类的特征和行为
示意图:
关键字:extends
java不允许多重继承
继承的作用:(重点&#x