静态
普通成员
普通成员属于对象
//静态成员
//静态成员属于类
//static 关键字 变成静态成员
/*class ren
{
public $name;
public static $zhongzu;//变成静态成员
//普通方法 中可以调静态成员 ren::加名
function say();
{
echo self::$zhongzu."你好";//self关键字在类里面代表该类
}
]
//静态方法中不能调用普通成员
static function run();
{
echo $this>name;
}
]
ren::$zhongzu="战斗民族"//调用类里面的静态成员,用类名加双冒号
echo ren::$zhongzu;
$r=new ren ();
$r->say();
抽象类
不能被实例化
作为父类使用,让子类继承
abstract class dongwu//变成抽象类
{
public $name;
public $age;
function run()
{
echo"跑"
}
}
//$d=new dongwu;
//继承父类
class dog extends dongwu;
{
}
$d =new dog();
$d->run();
var_dump($d);*/
//例子
abstract class yunsuan
{
public $a;
public $b;
function suan();
{
}
}
class jia extends yunsuan
{
function suan()
{
return $this->a+$this->b;
}
}
class cheng extends yunsuan
{
function suan()
{
renturn $this->a*$this->b;
}
}
$jia=new jia();
$jia->a=10;
$jia->b=5;
echo $jia->suan();
接口
1.面向对象的接口 interface
2.API
极度抽象的类 用interface定义 定义名要大写
接口中出现的方法主要是用来控制子类中必须实现该方法
interface IUSB
{
public $a;
function Read();//接口里面只声明函数名;
function Write();
}
class Shubiao implements IUSB//implements 做父类继承
{
function Read()
{
echo"鼠标插上了";
}
function Write()
{
echo "给鼠标穿了数据";
}
}
$s= new Shubiao();
$s->Read();