PHP面向对象基础二

属性初始化:属性是类对于同类事务所抽离出来的共性数据,本身在类结构中没有价值,是当具体对象产生以后,属于对象本身的,因此在进行类中定义属性的时候,通常不会对属性进行初始化,除非属性本省的值也具有共性

设定好的类成员本省不会被外部使用到,那么应该使用private或者protected

设定好的类成员一定会给外部访问,使用public

构造方法

构造方法__construct(),是类结构中特有的特殊方法,改方法有系统规定好,开发人员定义的时候只需要抄一边,有了构造方法的类在实例化对象之后,对象就会自动调用

构造方法实现:在类中增加一个方法__construct()即可

<?php
    //使用class关键字构造一个类
    class A{
        public $count;
        private $num ;
        public function __construct($c,$n){      //构造函数实例化结束后会自动调用
            echo __CLASS__.'<br>';

            //低版本初始化属性
            // $this->num = 100;
            // $this->count = 30;

            //初始化属性高版本
            $this->count = $c;
            $this->num = $n;
            // echo $this->num.'<br/>';
        }
    }
    // new A;          //new一个对象

    //传参实例化
    $a = new A(12,15);         //传入参数,括号没有传参的时候加不加都可以
    $a_1 =new A(100,50);
    echo $a->count.'<br>';
    echo $a_1->count;
    // echo $a->num;            //报错,因为num是一个私有属性,不能在外部调用

?>   

new 类名和new类名()没有区别是因为没有构造方法,一旦构造方法有了参数,或者构造方法没有参数限定,那么new类名就不能直接使用了

范围解析操作符

访问方式:类名::常量名

<?php
    //class定义类
    class A{
        const pi = 3.14;    // //const定义常量
    }
    echo A::pi;     //::访问类常量
?>

静态成员

使用static关键字修饰的属性和方法 ,表示该成员属于类访问,PHP静态成员有两种,静态属性和静态方法

静态属性:在类中定义自定义属性的时候使用static关键字修饰,访问的时候只能使用类+范围解析操作符+静态属性访问

<?php
    class A_1{
        public $money =0;
        public static $count=10;     //静态属性

        //静态方法
        public static function showCount(){
            //输出静态属性
            echo A_1::$count,__FUNCTION__.'<br>';
        }
    }
    //访问类,和访问常量的方法一样都用::
    echo  A_1::$count.'<br>';
    A_1::showCount();       //调用静态方法

    //普通属性访问 
    // $b = new A_1;
    // echo $b->money;

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值