面向对象 特点:封装 继承 多态。
封装:将具体功能封装到方法中,对象里将方法封装在类中,其实这些都是封装
。 在需要时可以进行调用,提高了代码复用性。隐藏了实现细节,还要对外提供可以访问的方式。便于调用者的使用,这也是核心之一,也可以理解为就是封装的概念。提高了安全性。
private是一个权限修饰符,私有的,用于修饰成员变量和成员函数,被私有化的成员只能在本类中访问,protect,受保护的,同一文件夹内使用。public,公共的,都能使用。想要修改只能,对外提供公共的get和set方法。
继承:继承时用extends函数,子类继承父类的所有属性和方法,还可以设立独属于子类的属性和行为,在子类中调用父类对象时用super函数。
重写:子类修改父类中包含的属性和行为。
final关键字,最终,不可变。final
是个修饰符,它可以修饰类,类的成员,以及局部变量。
final修饰类不可以被继承,但是可以继承其他类。
final修饰的方法不可以被覆盖,但父类中没有被final修饰方法,子类覆盖后可以加final。
final修饰的变量称为常量,这些变量只能赋值一次,定义的时候必须有初始值,不能变。
final修饰的引用类型变量,表示该引用变量的引用不能变,而不是引用所指的对象中的数据还是可以变化的;
抽象函数的类也必须被abstract关键字修饰,被abstract关键字修饰的类是抽象类
抽象类的特点:
1、抽象类和抽象方法都需要被abstract
修饰。抽象方法一定要定义在抽象类中。
2、抽象类不可以创建实例,原因:调用抽象方法没有意义
。
3、只有覆盖了抽象类中所有
的抽象方法后,其子类才可以实例化。否则该子类还是一个抽象类。
之所以继承,更多的是在思想,是面对共性类型操作会更简单。
当一个抽象类中的所有方法都是抽象方法时,那么这个抽象类就可以使用另外一种接口这种机制来体现。
接口怎么定义呢?定义普通的类或者抽象类可以使用class关键字,定义接口必须interface
关键字完成
接口中成员的特点:
1、接口中可以定义变量,但是变量必须有固定的修饰符修饰,public static final
所以接口中的变量也称之为常量。
2、接口中可以定义方法,方法也有固定的修饰符,public abstract
3、接口中的成员都是公共的。
4、接口不可以创建对象。
5、子类必须覆盖掉接口中所有的抽象方法后,子类才可以实例化
。否则子类是一个抽象类。
多态: 父类引用指向子类实例的现象,叫做多态。
多态中,编译看左边,运行看右边。
当要使用子类特有功能时,就需要使用向下转型。
父类引用指向子类对象
如:毕姥爷 a = new 毕老师(); //向上转型
毕老师 b = (毕老师)a; //向下转型