博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
抽象类和方法
阅读量:6971 次
发布时间:2019-06-27

本文共 696 字,大约阅读时间需要 2 分钟。

类可以用 abstract 修饰,表示抽象类,抽象类不能直接被实例化。但是,继承了抽象类的普通类是可以被实例化的。如:

//one.php

实例化的时候会报Fatal error的错误。

但是继承自这个抽象类的方法就可以被实例化。如:

//index.phpinclude 'one.php';class index extends one{        function __construct(){        parent::__construct();    }}$obj = new index;

除了类可以用 abstract 修饰之外,方法也能被 abstruct 修饰,为抽象方法。抽象方法真的是很抽象,它并没有内容,如:

如果方法被 abstruct 修饰,那么这个类必须用abstruct,不然就

会报错。也就是说抽象类可以有普通的方法,但是抽象方法必须在抽象类里面定义,并且,如果继承了这个有抽象方法的抽象类,那么在你继承的这个类里面必须重写这个方法,否则依然会报错。如:

但是抽象类中的抽象方法似乎不能被定义为静态的,定义了之后就报错。如:

还有,抽象类是可以继承抽象类的,并且不需要重写父类的抽象方法,它的抽象方法不能和父类的抽象方法同名,他们的关系就像是拓展延伸的关系。如:

由于平时接触这些也不多,主要都是基于框架开发或者直接在其他系统上二次开发,对这些稍微底层一点的知识理解的不透彻,在我的理解看来,抽象类和方法主要是用在比较底层的被继承的类中,供其他继承的类去拓展。但是是否对于性能是否有改变就不大清楚了。

转载地址:http://udosl.baihongyu.com/

你可能感兴趣的文章
第7章 数组实验
查看>>
cacti快速安装
查看>>
firefox下img元素和空div以及选中div中文字拖拽效果处理
查看>>
vue中eventbus 多次触发的问题
查看>>
两场CF
查看>>
Mahalanobis Distance(马氏距离)
查看>>
KVO和通知中心
查看>>
Master Nginx(1) - Installing Nginx and Third-Party Modules
查看>>
语义标签
查看>>
单向链表的有关操作(链式存储结构)
查看>>
string 转 int
查看>>
第四次团队会议
查看>>
spring的jar各包作用
查看>>
js获取上个月日期
查看>>
验证表单的两种方式:onSubmit和onClick
查看>>
【转载】外设使用Tips之MSCAN接收ID滤波器设置
查看>>
2^1000的各位数字和
查看>>
12.19站立会议
查看>>
5_find grep sed awk 详解
查看>>
JS 在web页面中调用本地应用程序
查看>>