面向对象、封装、继承、多态(1) 一、面向对象与面向过程: 面向过程:强调的是具体的功能实现(执行者) 面向对象:强调的是具备功能的对象。(管理者) (一)构造方法: 用于构造类的实例。 特点:方法名与类名相同 不用定义返回值类型、 不需要return语句 多个构造方法使用重载的形式存在的 (二)static关键字 随着类的加载而加载,优先于对象存在,被所有对象所共享,可以直接被类名调用 Static修饰的字段和方法,既可以通过类调用,也可以使用实例调用,没static修饰的方法和字段只能使用类名调用,static不能与this,super同时连用。 (三)匿名对象 对方法和字段只能进行一次调用,可作为实际参数进行传递,只在堆中开辟存储区域 只能使用一次,使用完就被销毁了。 (四)this关键字 表示当前对象,在构造器中相互调用,但是此时的this必须卸载构造方法的第一行。 二、封装 封装机制在程序中的体现:对描述对象的状态用字段表示,描述对象的行为用方法表示,把字段,方法定义在一个类中,并保证外界不能任意更改其内部的字段值,也不予许任意调动起内部的功能方法。 访问修饰符: 修饰符 类内部 同一个包 子类 其他 Public √ √ √ √ Protected √ √ √ Default √ √ Private √ 三.继承: (一)优点:1、提高了代码的复用性 2、让类与类之间产生关系,有了继承关系才有了多态的特性 3、java语言中只支持单继承 4、支持多层继承,Object是每个类的超类 (二)子与父的关系; 子类不能直接访问父类中的私有成员,但可以调用父类中的非私有方法来访问父类的私有成员 在子类方法前加@override能编译成功,表明方法是覆写。 (三)super关键字与调用父类构造方法 本类中调用另一个重载构造方法用this(参数列表) 子类构造方法调用父类构造方法用super(参数列表) Super必须放在第一句。 四、多态: 指同一个实体同时具有多种形式。 多态的实现:父类的引用变量指向子类的实例对象,而程序调用的方法在运行期才动态绑定。重载,覆写 多态的作用: 把不同子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异。写出通用的代码。 编译时多态:方法重载; 运行时多态:方法覆写;
|