本帖最后由 qq591453432 于 2016-8-4 19:40 编辑
今天停更!!!!!!!!!因为最近睡得太晚了,中午有的时候老跑神,后天有一天星期,后天补更,谢谢
补更Day08 Day09 Day10
Day08_01代码块
局部代码块:在方法中出现限定变量声明周期,及早释放,提高内存利用率.
构造代码块:在类中方法外出现,多个构造方法方法中相同的代码存放到一起,"每次调用构造都执行",并且在构造方法前执行
静态代码块:在类中方法外出现,并且加上static修饰,随着类的加载而加载,用于给类进行初始化,并且只执行一次.
Day08_02继承
面向对象三大特性:封装,继承,多态
继承的好处:提高了代码的复用性,维护性,并且让类与类之间产生关系,也是多态的前提.
弊端:类之间的耦合性增强了,但是要知道其原则是 高内聚,低耦合(利大于弊)
继承的特点: 只支持单继承(类与接口之间支持多实现) , 如果想看一个体系的共有特性就看最顶层类(Object类是所有类的最顶层类),想用这个体系的所有功能就看最底层类
注意事项: 子类只能继承父类的非 私有 成员 子类不能继承父类的构造方法,但是可以用super关键词去访问.不要因为部分功能区继承,而是看他们是否是对方的一类才去使用.
继承中的成员变量: 根据就近原则,但是如果出现相同名字的变量也没有太大意义,因为完全可以从父类继承下来.
this super关键词 this代表当前对象的引用,谁来调用我我就代表谁,super代表当前对象的父类的引用.
方法重写 : 当子父类出现了一模一样的方法(返回值类型时子父类) , 当子类需要父类的功能,而功能主体子类有自己 特有的内容时可以重写父类方法,这样既可以保留原有的父类中的方法,又可以用子类特有的方法.
注意事项:父类的私有方法不能被重写(根本就访问不到,就没法继承,就没办法重写).
子类重写父类方法时访问权限不能更低(要不然子类权限越来越小,到最后私有了别人不就访问不到了,所以写这个类也没什么意义了,所以最好和父类一致)
父类静态方法,子类也必须通过静态方法重写(因为多态的原因,快捷的记住静态只能访问静态就行了)
所以子类重写父类的方法的时候声明最好一模一样.
final 关键字修饰词 当final修饰类的时候该类不能被继承
修饰方法后该方法不能被重写
修饰变量后,变量变为常量(在显示初始化后或者在对象构造完毕前)
注意:当final修饰引用类型时,其地址值不能被改变,但是对象中的属性可以改变
Day09_多态及抽象类,接口
多态: 事物存在的多种形态(例如一只哈士奇,你既可以说他是一只狗,也可以说他是一只动物)
多态的前提: 1,要有继承关系2,要有方法重写(都不重写的话你继承它有个毛线用?直接用不就行了)3,要有父类引用指向子类对象
成员访问特点:变量:编译看父类,执行用父类, 方法:编译看父类,执行看子类 (动态绑定) 静态方法:编译看父类,执行看父类.
多态的好处与弊端: 提高了代码的维护性,提高了代码的扩展性.但是不能使用子类的特有行为和属性.
抽象类: 就是不能具体描述的. 有抽象方法的一定是抽象类,但是抽象类可以没有抽象方法.不能被实例化,但是可以根据多态的应用去实例化,抽象类的子类要么是抽象类,要么重写抽象类中的所有抽象方法. 有构造方法,可以是有参可以是无参
接口与抽象类相似,但是接口中的方法肯定全部都是抽象的.没有构造方法
|