ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> PHP技术
第1次亲密接触PHP5(2)
上篇,继续硬着头皮往下翻。。。。:)

类型指示





在PHP5,你可以在一个类的方法中指明其参数必须为一个类的实例:



Example 10: 类型实例



<?php

class foo {

  // code ...

}



class bar {

  public function process_a_foo(foo $foo) {

   // Some code

  }

}



$b = new bar();

$f = new foo();

$b->process_a_foo($f);

?>




可以看到,在变量前指定一个类名,让PHP5知道这个变量将是一个类的实例



静态成员





静态成员和静态方法在OOP中一般称为"类变量"和"类方法"。



一个"类方法"可以在对象没有被实例化的时候调用

一个"类变量"可以在对象没有被实例化的时候访问(也不需要对象的方法来调用)



Example 11: 类变量和类方法





<?php

class calculator {

  static public $pi = 3.14151692;



  static public function add($x,$y) {

    return $x + $y;

  }

}



$s = calculator::$pi;

$result = calculator::add(3,7);

print("$result");

?>




* 异常处理





异常处理是开发语言中公认的处理异常错误的方法,如在JAVA和C++中。

PHP5用"try"和"catch"关键字来捕获异常。



Example 12: 异常处理



<?php

class foo {



  function divide($x,$y) {

    if($y==0) throw new Exception("cannot divide by zero");

    return $x/$y;

  }

}



$x = new foo();



try {

  $x->divide(3,0);   

} catch (Exception $e) {

    echo $e->getMessage();

    echo "
<br />
";

    // Some catastrophic measure here

}

?>






可以看出,"try"表示的是执行代码的地方,当有错误的时候执行"catch"区域的代码。

在"catch"区域你应当指明执行异常的对象,这样可以使我们的结构更清晰



自定义异常处理





你可以在程序中定义自己习惯的捕获异常错误的代码。

非常简单,你仅仅需要继承一个异常类,在这个类中需要一个构造器和一个叫getMessage的方法而已:



Example 13: 自定义异常类



<?php

class WeirdProblem extends Exception {



   private $data;



   function WeirdProblem($data) {

        parent::exception();

        $this->data = $data;

    }



    function getMessage() {

        return $this->data . " caused a weird exception!";

    }

}

?>




现在就可以用"throw new WeirdProblem($foo) "来抛出异常。如果在try{}这样的区域中出现异常,PHP5就会跳入

catch区域来抛出异常。



名称空间





"名称空间"可以让你方便地调用一组类或方法:



Example 14: 名称空间



<?php

namespace Math {



  class Complex {

    //...code...

    function __construct() {

      print("hey");

    }

  }

}



$m = new Math::Complex();

?>




注:在实际应用中,你可以在不同的名称空间里定义同名的类来完成不同的任务(但接口要相同)

<翻译完毕>







终天蹩手蹩脚地翻译完了,有些翻译不正确的地方,如术语、对原文的理解,敬请一一指出,r
 
 
本站关键词:
|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司||东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|东莞国内域名|网页空间申请 东莞|东莞软件公司|东莞电脑外包服务|东莞网页服务|东莞网站公司|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有