多态——“封装”通过合并特征和行为来创建新的数据类型。“实现隐藏”则通过“私有化(private)”将接口和实现分离开来。多态的作用:消除类型之间的耦合关系。又名:动态绑定dynamicbinding/后期绑定latebinding或运行时绑定run-timebinding1.向上转型:将对某个对象的引用视为对其基类型引用的做法被称作“向上转型”,不用管导出类的存在,编写的代码只是与基类打交道。2.方法调用绑定:前期绑定(earlybinding)程序执行前进行绑定---由编译器和链接程序实现。后期绑定(latebinding)在运行时,根据对象的类型进行绑定。3.扩展性:多态——我们所做的代 Read More
复用类复用代码的两种形式:继承和组合1.组合语法(composition):将对象的引用置于新类中,编译器不是简单地为每个引用创建缺省对象,初始化这些引用:在以下位置进行:1)在定义对象的地方,(在构造器吧被调用之前被初始化)2)类的构造器中3)需要使用这些对象之前,(惰性初始化lazyinitialization)2.继承语法(inheritance):为了继承,一般的规则是将所有的数据成员都指定为private,将所有的方法指定为public,调用基类继承而来的方法,使用关键字super3.初始化基类:基类/导出类,当创建一个导出类的对象时,该对象包含了一个基类的子对象(subobject Read More
隐藏具体实现——如何将变动的事物与保持不变的事物相互隔离。1.包的使用:通过使用Package,访问权限受到影响。包明的唯一性,使得java程序解析,通过classPath以及包名解析到对应的类文件。类名相同,产生冲突,通过包名限定,来处理冲突问题。2.java访问权限修饰符:(accessspecifier),public,protected,private包访问权限:没有指定访问权限,则默认为包访问权限。包中的类可以相互访问。Public接口访问权限:Private:你不可以去碰Protected:继承访问权限:创建新包,能访问父类的public跟protected成员;同一包内,能访问包 Read More