-
- class my_class
- {
- function my_funct ($my_param)
- {
- user_error ("please Edefine ); >}
- function b()
- {
- return 10;
- }
- }
- ?>
-
複製代碼
A.多重繼承
B.介面
C.抽象方法
D. private 方法
E.函數重載(function overloading)
7. 假設定義了一個 testclass 類,它的建構子的函數名稱是什麼?
15
A. __construct
B. initialize
C. testclass
D. __testclass
E.只有 pHp5 才支援建構子
8. 一個類別如何覆寫預設的序列化機制?
A.使用__shutdown 和__startup 方法
B.呼叫 register_shutdown_function()函數
C.使用__sleep()和__wakeup()方法
D.無法覆蓋預設序列化機制
E.使用 ob_start()將類別放入輸出緩衝
9. 下列哪些物件導向的概念無法在 pHp4 中實現?
抽象類別
Final 類
public、private、protected(ppp)方法
介面
A.抽象類別
B. ppp 方法
C. ppp 方法和介面
D.以上所有都不可用
E.以上皆可使用
10.如何在類別的內部呼叫 mymethod 方法?
A. $self=>mymethod();
B. $this->mymethod();
C. $current->mymethod();
D. $this::mymethod()
E.以上都不對
11.以下腳本輸出什麼?
- class my_class
- {
- var $my_var;
- function _my_class ($value)
- {
- function _my_class ($value)
- {
>my_var = $value;- }
- }
- $a = new my_class (10);
- echo $a->my_var;
- ?>
-
複製程式碼
A. 10
B. Null
C. Empty
D.什麼都沒有
E.一個錯誤
12.以下腳本輸出什麼?
-
- class my_class
- {
- var $value;
- }
- $a = new my_class $value;
- }
- $a = new my_class;
- >my_value = 5;
- $b = $a;
- $b->my_value = 10;
- echo $a->my_value;
?>
?>
?>
- 複製程式碼
-
-
- A. 10
B. 5
C. 2
D. Null
E.什麼都沒有
-
- 13.以下腳本輸出什麼?
-
-
-
-
-
- $global_obj = null;
- class my_class
- {
- var $value;
- function>function(
global $global_obj; $global_obj = &$this; }} $a = new my_class;$a->my_value = 5;my_value = 10; echo $a->my_value;?>
複製程式碼
-
-
A. 5
B. 10
C.什麼都沒有
D.構造函數將報錯
E. 510
-
- 14.考慮如下一段程式碼,執行時,$eight_tenths->to_string 方法傳回的字串是 8/10 而不是希望的 4/5,為什麼?
-
-
-
-
-
-
class fraction {
- var $numerator;
- var $denominator;
- function fraction($n,>var $denominator;
- function fraction($n,> $d) {
- $this->set_numerator($n);
- $this->set_denominator($d);
- }
- function set_numerator($num) {
- $this- >numerator = (int)$num;
- }
- function set_denominator($num) {
- $this->denominator = (int)$num;
- }
- function to_string() {
- return “{$this->numerator} / {$this->denominator}”;
- }
- }
function gcd($a, $b) {
- return ($b > 0) ? gcd($b, $a % $b) : $a;
- }
function reduce_fraction($fraction) {
- $gcd = gcd($fraction->numerator,
- $fraction->denominator);
- $fraction->numerator /= $gcd;
$fraction->denominator /= $gcd; } $eight_tenths = new fraction(8,10);/* Reduce the fraction */ reduce_fraction($eight_tenths);var_dump($eight_tenths->to_string()); >?>
複製程式碼
-
- A. reduce_fraction 函數必須傳回一個值
B. reduce_fraction 函數必須接受一個整數值
C. gcd 函數有問題
D.必須以引用的方式傳遞$eight_tenths 對象
E.物件的實例不能傳遞給方法以外的其他結構。
-
- 15.以下程式碼是做什麼的?
-
-
require_once("myclass.php");myclass::mymethod();?> > 複製程式碼 A.靜態呼叫 mymethod 方法
B.產生 myclass 的實例並呼叫 mymethod 方法
C.產生一個語法錯誤
D.預設 myclass 類別最後被建立的實例並呼叫 mymethod()
E.呼叫名為 myclass::mymethod()的函式
16. pHp 中有靜態類別變數嗎?
A.有
B.沒有
17.以下腳本輸出什麼?
-
- class a
- {
- function a ($x = 1)
- {
- $this->myvar = $x ;
- }
- }
- class b extends a
- {
- var $myvar;
- function b ($x = 2)
- {
- $this->myvar = $x;
- parent::a();
- }
- }
- $obj = new b;
- echo $obj->myvar;
- ?>
複製程式碼
A. 1
B. 2
C.一個錯誤,因為沒有定義 a::$myvar
D.一個警告,因為沒有定義 a::$myvar
E.什麼都沒有
18.如何即時載入一個類別?
A.使用__autoload 魔術函數
B.把它們定義為 forward 類
C.實現一個特殊的錯誤處理手段
D.不可能
E.用有條件限制的 include 來包含它們
19. __________提供了一個高效能的解決物件導向中重複出現的問題的方案?
答案:__________
20.以下腳本輸出什麼?
-
- class a
- {
- function a()
- {
- echo parent called;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
} } }} } }}}
| )