PHP面向对象之解说(封装,继承,多态,引用,【const,define】)

<?php


define('Access',true);

//可以有不是抽象的方法和成员属性,但只要有一个方法是抽象的方法,这个类就必须声明为抽象类
abstract class Demo
{
    var $test;
    abstract function fun1();
}

interface MyInterface
{
    public function bark();

}


final class Person
{
    function say()
    {
        echo 'final关键标记的类不能被继承,不能被子类覆盖,是最终版本';
    }
}

class MyClass1
{
    const PI=3.1415926;
    static $static='Static';
    private static $private = 'Private';
    protected $protected = 'Protected';
    public $public = 'Public';

    // Contructors must be public
    public function __construct() {self::$private='NewPrivate';}

    // Declare a public method
    public function MyPublic() {echo 'MyPublic'; }

    // Declare a protected method
    protected function MyProtected() { echo 'MyProtected';}

    // Declare a private method
    private function MyPrivate() {echo 'MyPrivate';}
}
/*
 * Define MyClass2
 */
class MyClass2 extends MyClass1  implements MyInterface
{
    // We can redeclare the public and protected method, but not private
    protected $protected = 'Protected2';
    public function __construct(){parent::__construct();}
    public function __destruct(){
     echo '结构被销毁了';
    }


    function printHello()
    {
        echo $this->public;
        echo $this->protected;
        echo $this->private;
    }

    function bark(){
     echo '我会叫。。。';
    }
}

$obj = new MyClass2();

//PHP对象调用属性
echo $obj->public,'<br>';       

//PHP对象调用方法
echo $obj->MyPublic(),'<br/>';

echo 'const  '.MyClass1::PI,'<br />';

echo 'static  '.MyClass1::$static,'<br />';

//多态-----通过一个接口,实现不同对象的不同输出(略)

?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值