php ucp原生项目,PHP面向对象学习(一)

本文介绍了面向对象编程的基础概念,包括如何使用`class`定义类,`new`关键字实例化对象,以及`$this`关键字在方法内的使用。还展示了如何通过`->`操作符访问对象属性和调用方法。此外,文章讲解了类的继承,使用`extends`关键字实现,并通过`parent::`访问父类方法。文中给出了Animal和Dog类的示例,展示了属性覆盖和新增方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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::  来访问被覆盖的方法或成员。

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

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值