当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 第六节--访问属性和方法一个对象实例的属性是变量,就像PHP的其
 

 

 ·php5的对象模型[8]--访问限制    »显示摘要«
    摘要:第八节--访问方式php5的访问方式允许限制对类成员的访问. 这是在php5中新增的功能,但在许多面向对象语言中都早已存在. 有了访问方式,才能开发一个可靠的面向对象应用程序,并且构建可重用的面向对象类库.像c++和java一样,php有三种访问方式:public,private和protected. 对于一个类成员的访问方式,可以是其中之一. 如果你没有指明访问方式,默认地访问方式为public......
    摘要:第十节--抽象方法和抽象类面向对象程序通过类的分层结构构建起来. 在单重继承语言如php中, 类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类. 当然,可能存在多个根类,用来实现不同的功能. 在一个良好设计的体系中,每个根类都应该有一个有用的接口, 可以被应用代码所使用. 如果我们的应用代码被设计成与根类一起工作,那么它也可以和任何一个从根类继承出来的子类合作......


PHP5的对象模型[6]--访问属性和方法
上一页   ...

【程序编程相关:TreeView控件的双击事件

php有两个特殊的命名空间:parent命名空间指向父类,self命名空间指向当前的类. 例子6.6中显示了如何用parent命名空间来调用父类中的构造函数. 同时也用self来在构造函数中调用另一个类方法. 【推荐阅读:C# Code Review Check

if($name) 【扩展信息:提高Sql Server性能的10个技巧

blood = $blood;

{

$this->name = $name;

}

}

}

class mammal extends animal //哺乳动物

{

public $furcolor; //皮毛颜色

public $legs;

function __construct($furcolor, $legs, $name=null)

{

parent::__construct("warm", $name);

$this->furcolor = $furcolor;

$this->legs = $legs;

}

}

class dog extends mammal

{

function __construct($furcolor, $name)

{

parent::__construct($furcolor, 4, $name);

self::bark();

}

function bark()

{

print("$this->name says ´woof!´");

}

}

$d = new dog("black and tan", "angus");

?>

第四章中介绍了如何调用函数. 对于对象的成员来是这样调用的:如果你需要在运行时确定变量的名称,你可以用$this->$property这样的表达式. 如果你想调用方法,可以用$obj->$method().

你也可以用->运算符来返回一个函数的值,这在php以前的版本中是不允许的. 例如,你可以写一个像这样的表达式: $obj->getobject()->callmethod(). 这样避免了使用一个中间变量,也有助于实现某些设计模式,如factory模式.
    摘要:第十二节--类的自动加载当你尝试使用一个未定义的类时,php会报告一个致命错误. 解决方法就是添加一个类,可以用include包含一个文件. 毕竟你知道要用到哪个类. 但是,php提供了类的自动加载功能, 这可以节省编程的时间. 当你尝试使用一个php没有组织到的类, 它会寻找一个__autoload的全局函数. 如果存在这个函数,php会用一个参数来调用它,参数即类的名称. 例子6.15说明了_......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE