您的位置:首页 > 编程语言 > PHP开发

PHP面向对象学习(一)

2011-08-01 23:23 225 查看
类的定义,使用class关键字;事例化一个对象时,用new关键字,并赋值给一个变量;$this可以在方法内使用,表示调用此方法的对象;调用对象字段时,格式是$obj->field(注意字段名不加$),调用对象方法时,格式是$obj->function(),例子如下:

<?php
class Animal
{
// 成员声明
public $name = 'None';

// 方法声明
public function ShowInfo() {
echo "My name is " . $this->name;
}
}
$obj1 = new Animal();

var_dump($obj1);   //查看定义的对象

echo $obj1->name;  //调用属性

$obj1->ShowInfo();  //调用方法

?>
类的继承

一个类可以在声明中用 extends 关键字继承另一个类的方法和成员。不能扩展多个类,只能继承一个基类。被继承的方法和成员可以通过用同样的名字重新声明被覆盖,除非父类定义方法时使用了final关键字。可以通过parent:: 来访问被覆盖的方法或成员。
<?php
class Animal
{
// 成员声明
public $name = 'None';

// 方法声明
public function ShowInfo() {
echo "My name is " . $this->name;
}
}

// Dog继承Animal
class Dog extends Animal
{
// 添加新的属性
public $age = 0;

// 覆盖原有的ShowInfo()方法
public function ShowInfo() {
echo "The Dog's name is " . $this->name . ". And It's age is " . $this->age ;
}
// 添加新的方法
public function Bark() {
echo "Bark Bark Bark!!!";
}
}

$obj1 = new Dog();
$obj1->name  = "Dolly";
$obj1->age  = 2;
$obj1->ShowInfo();
$obj1->Bark();

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: