关于抽象类的实现

cutemurphy 2011-08-13 08:29:26
报错:Fatal error: Cannot call abstract method A::a() in D:\wamp\www\1.php on line 10
啥原因?

<?php
abstract class A{
abstract function a( );
}
class B extends A{
function a( ){
echo 1;
}
}
$c=new B( );
$c->a( );
?>
...全文
107 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cutemurphy 2011-08-13
  • 打赏
  • 举报
回复
<?php
class A{
function a( ){
echo 10;
}
}

new A( );
?>
果然。。。。相当于构造函数。。直接输出10
cutemurphy 2011-08-13
  • 打赏
  • 举报
回复
好的 实践少了。~
xuzuning 2011-08-13
  • 打赏
  • 举报
回复
这是 php 的约定,只有变量名是大小写敏感的
cutemurphy 2011-08-13
  • 打赏
  • 举报
回复
对乐 大小写 为什么不区分呢?
A与a。。
cutemurphy 2011-08-13
  • 打赏
  • 举报
回复
大牛~~感谢
xuzuning 2011-08-13
  • 打赏
  • 举报
回复
按 php 的约定,如果类没有构造函数,而该类又有与类名相同的方法时,则把该方法当作构造函数(兼容php4)

abstract class A{
abstract function a( );
}

两个 a,随便换掉一个就可以了

正式书写代码时,一般不会出现这种情况

21,890

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧