<?php
//到底应该用抽象类还是接口;
//如果要继承多个方法规范,那就用接口;
//如果你要共享一个方法体内容,那么就用抽象类;
/* abstract 抽象类
不能多继承
abstract class Computer {
abstract public function _run();
public function _run2(){
echo '我是父类的普通方法2!!';
}
}
class NoteComputer extends Computer {
public function _run(){
echo '我是子类方法!';
}
}
$notecomputer = new NoteComputer();
$notecomputer->_run();
$notecomputer->_run2();
*/
/*interface
成员字段必须是常量
接口方法必须是抽象方法~ 并且不能写abstract
子类继承接口的说法,叫做实现, 可以多实现
*/
interface Computer {
const NAME = '联想!!!';
public function _run();
public function _run2();
}
interface Computer2 {
public function _run3();
}
class NoteComputer implements Computer,Computer2 {
public function _run(){
echo '我重写了run!';
}
public function _run2(){
echo '我重写了run2!';
}
public function _run3(){
echo '我重写了run3!';
}
}
$notecomputer = new NoteComputer();
$notecomputer->_run();
$notecomputer->_run2();
$notecomputer->_run3();
echo NoteComputer::NAME;
echo Computer::NAME;
?>