Java基础(面向对象)笔记整理
本文最后更新于:2023年11月9日 晚上
JAVA基础(面向对象)笔记整理:
面向对象概述:
1.面向对象的思想来源生活
2.任何的对象从两个方面描述,静态属性、动态属性
3.创建一个类,其实就创建了一个模板
4.创建了一个类就是创建了一个新的数据类型
5.this代表的是指向当前实例
6.当自定义了有参数的构造方法后,系统不再自动生成无参构造
7.this()是调用对应参数的构造方法,必须放在第一行
1 |
|
继承:
1.JAVA中的继承是单继承
2.成员变量只有加上了set和get方法之后才被称作为 “属性”
3.JAVA中子类的实例化会调用所有父类的构造方法
4.子类在重写父类的方法时权限只能放大
5.调用指定的父类方法可以使用super
注:在方法中调用变量会有就近原则
抽象类
被abstract所修饰
1.专业做父类
2.抽象类是类的模板
3.不可以实例化,但是有构造方法
final:
可以用于修饰类、成员方法和成员变量!
所修饰的类:不能被继承、不能有子类
所修饰的成员方法:不能被子类重写
*所修饰的成员变量:不能被修改(是常量)
接口:
定义接口使用:interface
实现接口使用:implements
1.接口就是标准。
2.JAVA中一个类可以实现多个接口,在实际开发中,如果既可以定义为抽象类又可以定义为接口,那就定义为接口。这样是因为代码的扩展性更好。
3.接口中只能有常量(标准的常量命名是全大写)和抽象方法();
多态:
多态:父类来接收子类
子类转化为父类后,只能访问父类和子类共有的方法,子类特有的方法则不能访问
在JAVA中所有的类都是Object的子类
动态绑定:运行期间调用的方法,是根据其具体的类型
*注:多态的优缺点:
1. 优点:可以提高可维护性(多态前提所保证的),提高代码的可扩展性
1. 缺点:无法直接访问子类的特有成员*
多态中的向上转型和向下转型
引用类型之间的转换
- 向上转型:
由小到大(子类型转换为父类型) - 向下转型
由大到小(父类型转换为子类型)
面向对象和面向过程的区别:
面向对象编程首先考虑让谁去做,然后考虑怎么做
面向过程直接就考虑怎么做