PHP类相关知识点实例总结
|
本文实例总结了PHP类相关知识点。分享给大家供大家参考,具体如下: 最终类与最终方法如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被继承。 抽象类与抽象方法
接口接口可以看作是抽象类的更高层面的抽象,可以说是抽象类的特例 类:属性、类常量、方法 抽象类:属性、类常量、抽象方法 接口:接口常量、抽象方法
重载技术
对于属性不用的应用场景,做如下处理 ① 取值:自动调用类中的__get() ② 赋值:自动调用类中的__set() ③ 判断是否存在:自动调用类中的__isset() ④ 销毁:自动调用类中的__unset() 前提是预先定义好这些方法,否则会报错 ol[$key])){ return $this->ol[$key]; } return $key.' not exists'; } public function __set($key,$val){ $this->ol[$key] = $val; } public function __isset($key){ if(isset($this->ol[$key])){ return true; } return false; } public function __unset($key){ unset($this->ol[$key]); } } $obj = new bee(); echo $obj->one; echo ''; $obj->one = 1; echo $obj->one; echo ' '; var_dump(isset($obj->one)); 运行结果如下:
对于方法不用的应用场景,做如下处理 ① 在对象中调用不可访问的方法:__call() ② 静态方式中调用不可访问方法:__callStatic() '; echo 'function '.$name.' not exist'; } static function __callStatic($name,$arr){ echo ''; echo 'function '.$name.' not exist'; } /*public function __call($name,$arr){ $num = count($arr); if($num<1){ $name(); }else{ $name = $name.'_one'; $name($arr[0]); } }*/ } $obj->func(); bee::staFunc(); /*$obj->func(1); function func(){ echo ' '; echo 'no.0'; } function func_one($val){ echo ' '; echo 'no.'.$val; }*/ 运行结果如下: 注意:以上方法都属于魔术方法,都带有参数 更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》及《》 希望本文所述对大家PHP程序设计有所帮助。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
