Java面向对象编程思想
面向对象三个特征:封装、继承、多态
封装:
语法:属性私有化(private)、提供相对应的get/set 的方法进行访问(public)、
在set/get的方法中对属性的数据 做相对应的业务逻辑的判断
思想:封装外面的程序不能直接访问本类的属性,需要通过本类提供的方法间
接访问本类的属性,从而提高代码的安全性。
涉及到的其他的知识点:
构造方法:用来描述对象创建过程,可以通过构造方法快速创建对象。
this关键字:代表本类对象,调用本类的属性、方法、构造方法。
方法重载:方法名相同,参数列表不相同
继承:
语法:子类 extends 父类
思想: 多个类所描述的有共同的特征或行为,就可以将这些
类中共同的部分抽取出来建立他们的父类。
继承的好处:子类共用父类的代码,提高了代码的重用性;代码
后期扩展和维护,只需添加对应的子类即可。
涉及到的其他的知识点:
super关键字:代表父类的对象,调用父类的属性、方法、构造方法。
abstract关键字:抽象,修饰类、修饰方法。
static关键字:静态,修饰属性、方法、代码块、内部类
final关键字:最终,修饰属性、方法、类
方法重写:方法名相同,参数列表相同,返回值类型相同,
修饰符大于或等于父类的访问修饰符
多态:
语法:父类 对象名=new 子类();
思想:父类型的引用可以指向内存中的子类对象的内存空间,
就可以方便在设计方法的参数和返回值类型的时候,可以
设计成父类对象,这样的方法在实现时比较简洁,在后期
进行扩展时,方法比较容易。
在代码中,多态的使用更多的是父类引用指向子类对象,
会自动类型转换(向上转型),但是有时候也需要调用子类
中自己的东西,这个时候就需要还原子类,叫强制类型转换
(向下转型),转的时候要先使用instanceof运算符做类型的
判断。