PHP面向对象编程以类和对象为基础,通过封装、继承、构造函数等机制提升代码复用与模块化,核心包括属性方法定义、访问控制、对象生命周期管理。

PHP面向对象编程(OOP)是一种编程范式,它将数据和操作数据的方法封装在“对象”中,使代码更易于维护、复用和扩展。与传统的面向过程编程不同,OOP通过类和对象的结构组织代码,提升程序的模块化程度。
类是对象的模板或蓝图,定义了对象的属性和方法。对象是类的具体实例。
例如,可以定义一个Person类,包含姓名和年龄属性,以及说话的方法:
class Person {
public $name;
public $age;
public function sayHello() {
echo "你好,我是" . $this->name . ",今年" . $this->age . "岁。";
}
}
// 创建对象
$p1 = new Person();
$p1->name = "小明";
$p1->age = 20;
$p1->sayHello(); // 输出:你好,我是小明,今年20岁。
封装是指将对象的属性和方法隐藏起来,只通过公开的接口访问。PHP使用访问修饰符public、protected、private来控制访问权限。
立即学习“PHP免费学习笔记(深入)”;
通过getter和setter方法安全地读取和修改私有属性:
class Student {
private $score;
public function setScore($s) {
if ($s >= 0 && $s <= 100) {
$this->score = $s;
} else {
echo "分数必须在0-100之间";
}
}
public function getScore() {
return $this->score;
}
}
继承允许一个类(子类)获得另一个类(父类)的属性和方法,减少重复代码。
比如Teacher类继承自Person类,自动拥有姓名、年龄和sayHello方法,并可添加自己的特性:
class Teacher extends Person {
public $subject;
public function teach() {
echo $this->name . "正在教" . $this->subject;
}
}
$t1 = new Teacher();
$t1->name = "王老师";
$t1->subject = "数学";
$t1->teach(); // 输出:王老师正在教数学
__construct() 在创建对象时自动调用,适合用于初始化属性。
__destruct() 在对象销毁时调用,可用于清理资源。
class Car {
public $brand;
public function __construct($b) {
$this->brand = $b;
echo "一辆" . $this->brand . "汽车出厂了。<br>";
}
public function __destruct() {
echo $this->brand . "汽车已销毁。<br>";
}
}
$c1 = new Car("丰田"); // 输出:一辆丰田汽车出厂了。
// 脚本结束时自动调用析构函数
基本上就这些。掌握类、对象、封装、继承和构造函数,就打好了PHP面向对象的基础。实际开发中,还会用到多态、抽象类、接口等高级特性,但理解这些核心概念是第一步。不复杂,但容易忽略细节。
以上就是PHP面向对象编程是什么_PHP面向对象编程基础概念与实例的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号