PHP 类和对象(类的属性)

在类中定义的变量称之为属性,通常属性根数据库中的字段有一定的关联,因此


也可以称其为"字段"。


常见的属性声明是由关键字public,protected,var或private开头,后面跟一个普通的变量声


来组成。还有一些成员属性包括,静态static,常量const。


public:默认值,表示全局的,类内部外部子类都可以访问。


protected:表示受保护的,只有本类或子类或父类中可以访问,不允许外部调用。


private:表示私有的,只有本类内部可以使用。


Var:php 5 版本中会认为这个成员属性为public类型的属性。

Static

(1)静态的属性;

(2)用static修饰的成员属性可以被同一个类的所有对象共享;

(3)静态的数据是在类第一次被加载的时候就存在了内存中的数据段中(初始化静态段);

(4)类中使用self::成员属性名;

(5)类外  类名::成员属性名;


Const:   

(1)类中常量属性,在类中声明常量必须使用const;

(2)类中使用  self::成员属性名;

(3)类外使用  类名::成员属性名;


注意:属性中的变量可以初始化,但是初始化的值必须是常数

(这里的常数是指php脚本在编译阶段时就为常数,而不是在编译阶段之后在运行阶

段运算出的常数。例如,不能包含任何运算符,不能是任何变量,不能是一个函数等)。



成员属性的调用方式


在类的成员方法里面,可以通过 $this->property(property是属性名字)这种方式来


访问类的属性、 方法。但是要访问类的静态属性或者在静态方法里面却不能使用,而


是使用 self::$property。 


在类的非静态方法里面可以使用伪变量 $this,这个伪变量是调用该方法的实例化对象引用。



例1:

class Car{

//定义公共属性


public $name="汽车";


//定义受保护的属性


protected $color="白色";


//定义私有属性


private $price="10000";


}


$aCar=new Car();


echo $aCar->name; //调用对象的属性

echo $aCar->color; //错误!受保护的属性不允许外部调用

echo $aCar->price; //错误!私有属性不允许外部调用



受保护的属性和私有属性不允许外部调用,在类的成员方法内部是可以调用的。


可将例1修改为如下例2:


例2:


class Car{
    //定义公共属性
    public $name="汽车";
    //定义受保护的属性
    protected $speed="100";
    //定义私有属性
    private $price="12";
    
    function getPrice(){
        return $this->price;
    }

}


echo $aCar->getPrice();


根据此方法就可以访问类的内部的私有属性或受保护的属性。


本节完。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值