PHP OOP的特性-封装
隐藏对象字段和实现细节,仅通过对外接口,控制在程序中字段的读取和访问级别
,将抽象的行为和数据相结合,形成一个有机的整体。
<?phpclasss Conputer{//public 公共的,内外可以访问//private 私有的,类内可以访问//protected 受保护的,类内和子类可以访问//类内指的是{}之间的部分}?>
3、instanceof关键字
确定一个对象是否是一个类的实例,一个类的子类的实例,或者实现了一个接口
4、拦截器可以做成私有的,也可以设置静态方法,和普通字段设置一样,
5、常量;<?phpclass Computer{const PI=3.14;}?>
6、静态字段和方法
1、总结:静态方法只能访问静态的,或者常量,用self关键字;
<?php//类名一般第一个字母大小class Computer{ const PI=3.1415926;//常量,在该类所有的实例化对象的生命周期内,值不变,约定俗成 常量名称大写 public static $_count=0; //静态类字段 private $_name='联想'; //我是公共字段,内外可以访问,初始化不可以赋值变量,如 $_name=time();错误 private $_cpu; //我是私有字段,类内可以访问 protected $_zb; //我是受保护的字段,子类和类内可以访问 public function _run(){ //类内访问字段: $this->字段名称 $this->_cpu='I5'; } //静态方法可以通过类—>方法名称访问,也可以通过 类名称::方法名称访问 //静态方法,不可以访问非静态字段,非静态方法,通过$this也无法访问,因为不在对象中 //静态方法,可以访问静态字段,静态方法, //静态方法内部,不可使用$this关键字 //静态只能访问静态 ,或者常量, public static function _run2(){ echo self::$_count; //self::_run(); 错误 //self::_name; 错误 self::PI; } //普通方法可以访问静态方法,因为,静态方法是为了对所有实例共享的 public function _run3(){ self::_run2(); } //拦截器 //变量有用 private function __set($varname,$varvalue){ $this->$varname=$varvalue; } private function __get($varname){ return $this->$varname; }}//实例化一个类$computer=new Computer();$computer1=new Computer();Computer::_run2();echo '<br>';$computer->_run2();echo '<br>';//访问常量echo Computer::PI;echo '<br>';//echo Computer::$_count;//echo $computer->_count; 无法访问//echo $computer->PI; 无法访问//拦截器 设置变量值$computer->_name="dell";echo '<br>';echo $computer->_name;echo '<br>';$computer->_count="dell";echo '<br>';echo $computer->_count;echo '<br>';echo Computer::$_count;//instanceof 关键字 确定某个对象是否是一个类的实例。一个类的子类,或者是实现了某个接口,echo ($computer instanceof Computer);?>
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。