我们经常听到面向对象的三大特性:封装、继承、多态,但是还有许多特性,那么我们是否记得重写呢?在学习的时候简单的记录了下php中等重写方法:
1)先通过例子看下,这样更加明了
//定义父类(也可以称为基类)
class Goods {
public $goods_name = 'Goods:name';
public function sayName() {
...
分类:
Web程序 时间:
2014-10-12 22:07:18
阅读次数:
169
抽象类(abstract)
当编写一个类时,时常会为该类定义一些方法,这些方法的使用用以描述该类的行为方式,那么这些方法都有具体的方法体。但是在某些情况下,某个父类只是知道子类应该包含怎样的放过,但是无法精确的知道这些子类是如何实现这些方法,例如定义一个GetTime类,该类提供了一个计算某一段程序...
分类:
其他好文 时间:
2014-10-12 16:14:48
阅读次数:
202
首先是方法的参数是父类对象,传入子类对象是否可行然后引出Parent p = new Children();这句代码不是很理解,google的过程中引出向上转型要理解向上转型又引出了动态绑定从动态绑定又引出了静态绑定程序绑定的概念:绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对jav...
分类:
编程语言 时间:
2014-10-12 11:03:37
阅读次数:
276
继承 解决代码的冗余,实现多态,增加了代码的扩展性,便于维护 继承的特性: 1.单根性:一个子类只能有一个父类 2.传递性:孙子继承爷爷 3.子类能继承父类的方法和属性,不能继承私有字段 4.子类调用父类的构造函数用使用关键字base 5.父类只能调用自己的成员,不能和使用子类的成员 6.子类之间....
分类:
其他好文 时间:
2014-10-12 03:28:57
阅读次数:
144
(*)继承:类名字后+extends关键字,一个父类多个子类,子类继承父类所有可访问的成员(变量,方法)(*)重写(覆盖):子类可以重写父类函数,重写的函数的访问修饰符必须高于父类原函数的访问修饰符,子类重写父类函数的方法是函数的定义要一模一样(*)父类引用不能调用子类方法:如下图(*)继承中的变量...
分类:
编程语言 时间:
2014-10-12 01:43:37
阅读次数:
277
@Override是伪代码,表示重写(当然不写也可以),不过写上有如下好处:1、可以当注释用,方便阅读;2、编译器可以给你验证@Override下面的方法名是否是你父类中所有的,如果没有则报错。例如,你如果没写@Override,而你下面的方法名又写错了,这时你的编译器是可以编译通过的,因为编译器以...
分类:
编程语言 时间:
2014-10-11 19:50:46
阅读次数:
162
在java中this表示当前类中的对象,super则表示父类中的对象。比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造方法,如果你想引用父类的某种东西,则选super。class Person { publ...
分类:
编程语言 时间:
2014-10-11 19:41:36
阅读次数:
221
首先是类结构:? 可以看到CCNode 几乎是游戏中处理的大部分类的父类,其主要有以下函数: virtual int??getZOrder?(void) //获取节点的顺序 virtual const?CCPoint?&??getPosition?(void) //获取节点的位...
分类:
其他好文 时间:
2014-10-11 13:43:25
阅读次数:
205
C++面试题1.是不是一个父类写了一个virtual 函数,假设子类覆盖它的函数不加virtual ,也能实现多态?virtual修饰符会被隐形继承的。private 也被集成,仅仅事派生类没有訪问权限而已virtual可加可不加子类的空间里有父类的全部变量(static除外)同一个函数仅仅存在一个...
分类:
编程语言 时间:
2014-10-10 22:15:24
阅读次数:
246
上一节继承下(一)我们进行抽象类、接口以及多态的学习,
接下来大家我们讲点特殊的东西就是object类,
我们一直在说继承,子继承了父,父还有没有父类呢,
为什么这么思考,大家想构造函数的第一行是不是都有
一个隐式的super()语句,它们是不是也都会去访问自己的
父类呢?其实是的,这个父类叫什么呢?
叫做Object类,传说JAVA对象中的上帝,哈哈。
1、定义
所有...
分类:
编程语言 时间:
2014-10-10 21:24:24
阅读次数:
186