上面看到PHP對象中的成員有兩種一種是成員屬性, 一種是成員方法。對象我們以經可以聲明了,$p1=new Person(); 怎么去使用對象的成員呢?要想訪問對象中的成員就要使用一個特殊的操作符”->”來完成對象成員的訪問:
`對象->屬性 $p1->name; $p2->age; $p3->sex;`
`對象->方法 $p1->say(); $p2->run();` 如下面實例:
~~~
1 <?php
2 class Person
3 {
4 //下面是人的成員屬性
5 var $name; // 人的名子
6 var $sex; // 人的性別
7 var $age; // 人的年齡
8
9 //下面是人的成員方法
10 function say() { // 這個人可以說話的方法
11 echo "這個人在說話";
12 }
13
14 function run() { //這個人可以走路的方法
15 echo "這個人在走路";
16 }
17 }
18
19 $p1 = new Person(); //創建實例對象$p1
20 $p2 = new Person(); //創建實例對象$p2
21 $p3 = new Person(); //創建實例對象$p3
22
23 //下面三行是給$p1對象屬性賦值
24 $p1->name = "張三";
25 $p1->sex = "男";
26 $p1->age = 20;
27
28 //下面三行是訪問$p1對象的屬性
29 echo "p1對象的名子是:" . $p1->name;
30 echo "p1對象的性別是:" . $p1->sex;
31 echo "p1對象的年齡是:" . $p1->age;
32
33 //下面兩行訪問$p1對象中的方法
34 $p1->say();
35 $p1->run();
36
37 //下面三行是給$p2對象屬性賦值
38 $p2->name = "李四";
39 $p2->sex = "女";
40 $p2->age = 30;
41
42 //下面三行是訪問$p2對象的屬性
43 echo "p2對象的名子是:" . $p2->name;
44 echo "p2對象的性別是:" . $p2->sex;
45 echo "p2對象的年齡是:" . $p2->age;
46
47 //下面兩行訪問$p2對象中的方法
48 $p2->say();
49 $p2->run();
50
51 //下面三行是給$p3對象屬性賦值
52 $p3->name="王五";
53 $p3->sex="男";
54 $p3->age=40;
55
56 //下面三行是訪問$p3對象的屬性
57 echo "p3對象的名子是:" . $p3->name;
58 echo "p3對象的性別是:" . $p3->sex;
59 echo "p3對象的年齡是:" . $p3->age;
60
61 //下面兩行訪問$p3對象中的方法
62 $p3->say();
63 $p3->run();
64 ?>
~~~
從上例中可以看出只是對象里面的成員就要使用對象->屬性 、對象->方法 形式訪問,再沒有第二種方法來訪問對象中的成員了。
- 1.什么是面向對象
- 2.什么是類,什么是對象,類和對象這間的關系
- 3.什么是面向對象編程呢
- 4.如何抽象出一個類
- 5.如何實例化對象
- 6.如何去使用對象中的成員
- 7.特殊的引用this的使用
- 8.構造方法__construct()與析構方法__destruct()
- 9.封裝性(var與public,protected,private的關系)
- 10.__set(),__get(),__isset(),__unset()四個方法的應用
- 11.類的繼承
- 12.重載新的方法(parent::)
- 13.訪問類型(public,protected,private)
- 14.final關鍵字的應用
- 15.static和const關鍵字的使用(self::)
- 16.__toString()方法
- 17.克隆對象__clone()方法
- 18.__call()處理調用錯誤
- 19.抽象方法和抽象類(abstract)
- 20.PHP5接口技術(interface)
- 21.多態的應用
- 22.把對象串行化serialize()方法,__sleep()方法,__wakeup()方法
- 23.自動加載類 __autoload()函數