PHP 面向对象编程(2)

时间:2023-03-08 21:33:13
PHP 面向对象编程(2)

一些内建方法:

  

        class Person {
public $isAlive = true; function __construct($name) {
//这里我们创建了一个name的属性
$this->name = $name;
}
//dance方法 返回一个值
public function dance() {
return "I'm dancing!";
}
}
//实例化一个me类
$me = new Person("Shane");
//is_a判断$me是否属于Person类
if (is_a($me, "Person")) {
echo "I'm a person, ";
}
//property_exists判断$me是否有name这个属性
if (property_exists($me, "name")) {
echo "I have a name, ";
}
//判断方法是否存在
if (method_exists($me, "dance")) {
echo "and I know how to dance!";
}

继承:

  class Shape {
//属性
public $hasSides = true;
}
//Square类继承了Shape类 通过extends关键字实现
class Square extends Shape { } $square = new Square();
// 判断如果存在hassides属性 就输出句子
if (property_exists($square,"hasSides") ) {
echo "I have sides!";
}
         class Vehicle {
static function honk() {
return "HONK HONK!";
}
}
class Bicycle extends Vehicle{
public function bonk(){
return "Beep beep!";
} } $bicycle = new Bicycle();
// Bicycle类 继承了Vehicle类的方法
echo $bicycle->honk();

       class Person {

       }
class Ninja extends Person {
// Add your code here...
const stealth = "MAXIMUM"; }
// 访问类当中的常量 不需要实例化
echo Ninja::stealth; class King {
// Modify the code on line 10...
public static function proclaim() {
echo "A kingly proclamation!";
}
}
// 调用方法 不需要实例化
echo King::proclaim();