类与对象
本课属于 Coddy PHP 学习旅程的“面向对象编程”单元。第 3 课,共 91 课。
类和对象的作用不同。类是蓝图,而对象是根据蓝图创建出来的。
下面是一个声明了属性的类示例:
<?php
class Dog {
public $name;
public $breed;
}public 关键字表示这些属性可以从类的外部访问。我们会在属性课中进一步学习 public。
现在,从 Dog 类创建对象:
$dog1 = new Dog();
$dog2 = new Dog();对象的属性可以有各自的值:
$dog1->name = "Nicky";
$dog1->breed = "Siberian Husky";
$dog2->name = "Teemon";
$dog2->breed = "Shu'ali";-> 运算符用于访问对象的属性。
打印每个对象的数据:
echo $dog1->name . " is a " . $dog1->breed . "\n";
echo $dog2->name . " is a " . $dog2->breed . "\n";输出:
Nicky is a Siberian Husky
Teemon is a Shu'ali关键区别:Dog 类定义了所有狗共有的结构,而对象 $dog1 和 $dog2 表示具体、独立的狗,它们具有独特的属性值。
挑战
简单补全代码,从 Student 类创建两个学生对象并设置它们的属性。
student.php:包含Student类(已锁定)driver.php:创建对象并设置它们的属性
设置以下值:
$student1:姓名为"Alice",成绩为"A"$student2:姓名为"Bob",成绩为"B"
亲手试试
<?php
require_once 'student.php';
// TODO: 创建两个学生对象
// TODO: 设置 student1 的属性(name: "Alice",grade: "A")
// TODO: 设置 student2 的属性(name: "Bob",grade: "B")
// 打印学生信息
echo $student1->name . " has grade " . $student1->grade . "\n";
echo $student2->name . " has grade " . $student2->grade . "\n";
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
面向对象编程中的所有课
自己练习: PHP 在线编译器