当前位置 : 主页 > 手机开发 > 其它 >

面向对象的几个重要方法

来源:互联网 收集:自由互联 发布时间:2021-06-19
声明一个类,默认限定是public 语法 class name{} 在class内声明变量 语法 class name{ var $a;} 在class内声明方法 语法 class name{ var $a;function fun(){}} 如果想使用class内的变量和方法,首先必须要实

声明一个类,默认限定是public

语法 class name{

}

 

在class内声明变量

语法 class name{
var $a;
}

在class内声明方法

语法 class name{
var $a;
function fun(){
}
}

如果想使用class内的变量和方法,首先必须要实例化这个类,用new关键字进行实例化,

实例化后的则是一个对象,此时才可以内部变量和方法的使用

aname=new name();

想要使用变量和方法,用符号->

aname->a;
aname->fun;

重写(继承)

方法btest继承方法atest,则btest会得到atest中的变量和方法,当然,也可以重新定义变量和方法,就叫做重写

<?php
class atest{

    function a()
    {
        echo "haha";
    }
}
class btest extends atest
{

}

$test=new btest();
$test->a(); //haha

在一个类中,如果使用了static定义变量和方法,则不需要再实例化去调用,可以直接在本类中使用self::进行调用,在外部使用::直接输出

在当前类中调用,普通方法和变量使用$this->,静态变量和方法使用self::

 

class atest
{
public static $a="haha"; public static function b()
{ echo
"你在".self::$a; } } echo atest::$a."<br>"; //haha echo atest::b(); //你在haha

如果要在子类中调用父类的静态方法和变量 使用parent::来调用

class atest{

    public static function a()
    {
        echo "123";
    }
}
class btest extends atest
{
     function test(){
         echo parent::a();
     }
}
$fun=new btest();
echo $fun->test();  //123

构造函数不需要声明限制条件 ,  在实例化类的时候,自动运行  使用__construct

析构函数同样不需要声明限制条件,是调用完对象以后,自动执行  使用__destruct

接口 声明关键字 interface  使用关键字 implemtns  ,方法需要都是公共的public

接口类不需要实现具体的方法功能

使用接口的类,需要实现接口中所有的方法

网友评论