2017.4.20

  PhP

二.静态

普通成员:属于对象;静态成员:属于类

关键字:static。self

class FenBi{

public $length;//长度

public  static $color;//颜色

public static function test()//静态方法无法调用普通成员,因为没有对象。

 self::$color;//静态的调用都用双冒号,任何地方;

public function ceshi(){

self::$color;//普通方法可以调用静态成员;

}

$f=new FenBi();

$f->length;//普通成员的调用方式

FenBi::$color;//静态成员的调用

 

二.抽象

作用:主要作为父类来使用;

关键字:abstract;

抽象类由于过于抽象,所以不能被实例化,作为父类存在;

abstract class DongWu{

public $name;

abstract public function test();//抽象方法不能有函数体;因为过于抽象了;

class Dog extends DongWu// 包含抽象方法的类一定是抽象类

public function test()//抽象方法里面不能包含函数体,其具体功能在子类里面通过重写实现;

 

   echo"冲邪";

 

三,接口

//极度抽象的类;名称必须用"I"开头

接口里面没有成员变量

接口里面的速所有成员函数全部为抽象的

关键字:interface IUSB

interface IUSB{

public function read();//读的方法

public function write();//写的方法

}

class ShuBiao implements IUSB

{

  public function read(){}

  public function  write(){}

}//如此就实现了

 

 

 

 

附加:

__toString()方法

class Ren{

public $name;

public function __tostring(){

return""//输出对象引用

}

}

克隆对象

class Ren{

public $name="张三";

public function __clone()//这个方法叫克隆

{$this->name = "李四";//这样就相当于在克隆是就改变了赋值

}

}

$r=new Ren();

$c=clone $r;//这就是克隆

 

加载类

include(" ");//里边写相对路径,也可以不加括号

require("");//同上

require_once("");//同上 

注意,每次引用只能用一个!!

require更好用一点

 

自动加载类

要求:1.所有的类文件写在同一个目录下。2.类文件的命名规则要一致。3.类的文件名要和类名保持一致

functio__autoload($classname)P{

requore_once("./".$classname.".class.php");

}

posted @ 2017-04-20 10:04  雪花飘刂  阅读(103)  评论(0编辑  收藏  举报