面向对象的三个基本特征分别是:封装、继承、多态。
封装:类将一些属性和方法进行私有化,也就是说对外不可以修改类的内部内容,如果外部需要类的这些数据,可提供一些公开的方法进行查询数据,不能修改。
如:被private关键字修饰的属性,在外面需要查看要再类中提供相应的getXX()方法。
继承:Java的继承为单继承(不可继承于多个类),所有类默认继承Object类,关键字为:extends。子类继承父类,会继承父类所有的公共方法和属性,并且可以根据自身特性增加一些自身的方法和属性。
如:Person类作为一个类,有一个move()的public方法,其子类Student ,Teacher在继承Person类时,都具有move()方法,再根据自身特性添加自身内容。
子类如果需要调用父类的方法或属性,可以使用super,子类调用自身的属性方法用this。
多态:可以设置父类对象与子类对象相等的操作,例如:Person p = new Student();
Student为实际的类型,Person为声明类型,在使用时,只能使用Person中的方法,而不能用Student中的。
多态的实现有两种:1、重载。2、覆盖。
重载,意思是允许有同名的方法,但方法中的参数类型和参数个数不能一样,在调用时,根据参数参数类型跟个数调用不同的方法。
覆盖,意思是子类继承来自父类的方法,根据子类的特性可以修改。