新手类学习中,求理解
本帖最后由 xuzuning 于 2012-11-19 22:06:50 编辑
<?php<br />interface PCI<br />{<br />function start();<br />function stop();<br />}<br />class NetCard implements PCI<br />{<strong>*本文来源gaodai#ma#com搞@代~码^网+</strong><strong>搞代gaodaima码</strong><br /> function start()<br /> {<br /> echo "网络连接成功<br>";<br /> }<br /> function stop()<br /> {<br /> echo"网络断开连接<br>";<br /> }<br />}<br />class SoundCard implements PCI<br />{<br /> function start()<br /> {<br /> echo "有声音<br>";<br /> }<br /> function stop()<br /> {<br /> echo"没有可用的声卡设备<br>";<br /> }<br />}<br />class ViewCard implements PCI<br />{<br /> function start()<br /> {<br /> echo "显示图像<br>";<br /> }<br /> function stop()<br /> {<br /> echo"没有可用的显卡设备<br>";<br /> }<br />}<br />class MainBoard <br />{<br /> function usePCI($pci)<br /> {<br /> $pci->start();<br /> $pci->stop();<br /> }<br />}<br />class Person<br />{<br /> function install()<br /> {<br /> $mb=new MainBoard();<br /> <br /> }<br />}<br />$p=new Person();<br />$p->install();<br />$nc=new NetCard;<br />$mb->usePCI($nc);<br />
//程序报一个这样的错,不理解,
Fatal error: Call to a member function start() on a non-object in C:\wamp\www\PCI.php on line 63
——解决方案——————–
class Person
{
function install()
{
$mb=new MainBoard();
}
}
你是指这个吗?
$mb 是在 install 方法中创建的,方法结束了,也就没有了
并不因为是类而改变了变量的作用域
搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:生手类学习中,求理解
转载请注明原文链接:生手类学习中,求理解
