Correcting teacher:PHPz
Correction status:qualified
Teacher's comments:
<?php
namespace demo;
// 实例演示类的扩展,抽象,接口的语法
//声明一个接口
//方法不需要方法体,声明的方法都必须为public,接口不能包含成员变量,只能有常量
interface Inter{
const PI=3.14;
public function run(string $name);
public function sleep(string $name);
}
//声明一个抽象类
//抽象的类不能被实例化,抽象方法不需要方法体
abstract class SubClass{
protected $name;
abstract function jump();
function go(){
}
}
//声明一个类继承一个抽象类
//要实现抽象方法
class SonClass extends SubClass{
protected $name;
function jump(){
}
}
//声明一个类继承一个接口
//子类必须定义接口的所有方法
class SonClassInter implements Inter{
public function run(string $name) {
}
public function sleep(string $name){
}
}
//声明一个类继承一个抽象类
//子类必须定义所有抽象方法
class SonClassSub extends SubClass{
public function jump(){
}
}
`
全局成员有:常量、函数、类、接、trait
用命名空间是为了让同一个文件名,存在于不同环境,避免同名文件报错。
声明方式:
脚本紧跟<?php下一行写namespance name;
跨空间访问有三中方式
非限定访问:同空间直接 类名访问
不完全限定访问:子空间类,加上\子空间名\类名
完全限定访问:从全局开始,\空间名...\类名