接上篇,繼續(xù)硬著頭皮往下翻。。。。:)
類型指示

在PHP5,你可以在一個(gè)類的方法中指明其參數(shù)必須為一個(gè)類的實(shí)例:

Example 10: 類型實(shí)例

<?php
class foo {
// code ...
}

class bar " /> 一级 黄 色 毛片,成人福利在线看,久久综合给会久久狠狠狠

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

第1次親密接觸PHP5(2)


接上篇,繼續(xù)硬著頭皮往下翻。。。。:)
類型指示

php5,你可以在一個(gè)類的方法中指明其參數(shù)必須為一個(gè)類的實(shí)例:

Example 10: 類型實(shí)例

<?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);
?>

可以看到,在變量前指定一個(gè)類名,讓php5知道這個(gè)變量將是一個(gè)類的實(shí)例

靜態(tài)成員

靜態(tài)成員和靜態(tài)方法在OOP中一般稱為"類變量"和"類方法"。

一個(gè)"類方法"可以在對(duì)象沒(méi)有被實(shí)例化的時(shí)候調(diào)用
一個(gè)"類變量"可以在對(duì)象沒(méi)有被實(shí)例化的時(shí)候訪問(wèn)(也不需要對(duì)象的方法來(lái)調(diào)用)

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");
?>

* 異常處理

異常處理是開(kāi)發(fā)語(yǔ)言中公認(rèn)的處理異常錯(cuò)誤的方法,如在Java和C++中。
php5用"try"和"catch"關(guān)鍵字來(lái)捕獲異常。

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 "/n<br />/n";
    // Some catastrophic measure here
}
?>


可以看出,"try"表示的是執(zhí)行代碼的地方,當(dāng)有錯(cuò)誤的時(shí)候執(zhí)行"catch"區(qū)域的代碼。
在"catch"區(qū)域你應(yīng)當(dāng)指明執(zhí)行異常的對(duì)象,這樣可以使我們的結(jié)構(gòu)更清晰

自定義異常處理

你可以在程序中定義自己習(xí)慣的捕獲異常錯(cuò)誤的代碼。
非常簡(jiǎn)單,你僅僅需要繼承一個(gè)異常類,在這個(gè)類中需要一個(gè)構(gòu)造器和一個(gè)叫g(shù)etMessage的方法而已:

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!";
    }
}
?>

現(xiàn)在就可以用"throw new WeirdProblem($foo) "來(lái)拋出異常。如果在try{}這樣的區(qū)域中出現(xiàn)異常,php5就會(huì)跳入
catch區(qū)域來(lái)拋出異常。

名稱空間

"名稱空間"可以讓你方便地調(diào)用一組類或方法:

Example 14: 名稱空間

<?php
namespace Math {

  class Complex {
    //...code...
    function __construct() {
      print("hey");
    }
  }
}

$m = new Math::Complex();
?>

注:在實(shí)際應(yīng)用中,你可以在不同的名稱空間里定義同名的類來(lái)完成不同的任務(wù)(但接口要相同)
<翻譯完畢>



終天蹩手蹩腳地翻譯完了,有些翻譯不正確的地方,如術(shù)語(yǔ)、對(duì)原文的理解,敬請(qǐng)一一指出,共同完善,共同開(kāi)始php5的學(xué)習(xí)、探討。。。

php技術(shù)第1次親密接觸PHP5(2),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久久久久国产精品mv | 啪啪色网| 国产日韩精品欧美在线ccc | www.av在线播放 | 免费伊人网 | 蝴蝶色综合综合成人网 | 激情五月亚洲 | 99久久精品99999久久 | 中文福利视频 | 337p欧洲大胆扒开图片 | vr欧美乱强伦xxxxx | 国产剧情自拍 | 91逼逼| 欧洲免费视频 | 中文字幕在线视频网 | 国产视频在 | 国产香蕉久久精品综合网 | 成人在线综合网 | 国产成人精选免费视频 | 一区二区视频在线观看高清视频在线 | 91高清在线视频 | 好吊色这里只有精品 | 久久久噜噜噜久久网 | 国产综合在线观看视频 | 国产中文在线视频 | 91在线网| 色哟哟网 | 91亚洲视频在线观看 | 韩国一区二区三区视频 | 成人午夜精品网站在线观看 | 水蜜桃一二二区视在线 | 狼人伊人干 | 欧美色精品 | 国产精品亚洲专一区二区三区 | 国产精品1024永久观看 | 91不卡在线精品国产 | 男人操女人免费视频 | 欧美特黄a级片 | 成人午夜大片免费7777 | 国产精品久久1024 | 婷婷丁香激情五月 |