标签:类构造 部分 实现 变量 转换 覆盖 obj 多继承 派生
先整理一下各种访问权限权限修饰符:
访问权限修饰符 | 同一个类 | 同一个包 | 子类 | 全局范围 |
public | √ | √ | √ | √ |
protect | √ | √ | √ | x |
private | √ | Χ | x | x |
无修饰符(默认为friendly) | √ | √ | x | x |
这一周学了继承,知道了子类和父类的关系,及他们之间的 区别与联系。在继承中,extends表示子类和父类之间继承关系。已存在的类称为超类、基类、或父类,新类称为子类、派生类、或孩子类,子类除了比超类拥有的功能更加丰富以外,还具有层次结构及继承父类的所有成员。注意的一点是,在子类中可以增加域,增加方法或覆盖超类的方法,然而绝对不能删除继承的任何域和方法。若父类要求不满足子类,则子类覆盖父类。
super后面加(),表明要调用父类构造器,若加.表明调用父类成员及方法,java是不支持多继承的。
final修饰符修饰三部分:1.修饰属性域 2.修饰类 3.修饰方法,final不能形成继承链,没有子类。在使用子类和父类的过程中,要注意强制类型转换,因为子类和父类在设置对象变量时会根据各自的需求设置,在把父类对象赋值给子类时,应统一他们的对象变量。如果类型转换不成功,编译器就不会进行这个转换,java也不会生成null对象,而是抛出一个异常。
抽象类:为了提高程序的清晰度,包含一个或多个抽象方法的类本身必须被声明为抽象的,抽象方法充当着占位角色,他们的具体实现在子类中。抽象类不能被实例化,也就是说 如果将一个类声明为abstract,就不能创建这个类的对象,例如: new Person("Vince Vu")是错误的,但可以创建一个具体子类的对象。
如果没有明确地指出超类,Object就被默认为是这个类的超类,任何一个类都可以使用Object类,因为他们是继承关系。
这一周实验课跟贾亚茹坐一起,克服了跟不上老师步骤的不足,有什么问题他们也会耐心教我,感觉找了一个好的小老师。他们的学习氛围很好,很能带动旁人跟着学习,感觉没有先前那么的特别吃力了。继续向他们看齐。
201671010101 2016-2017-2《java程序设计》
标签:类构造 部分 实现 变量 转换 覆盖 obj 多继承 派生
原文地址:http://www.cnblogs.com/bx1214444222/p/7587338.html