码迷,mamicode.com
首页 > Web开发 > 详细

原生php 使用重点 要点 忽略点!

时间:2017-12-06 12:57:14      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:就是   忽略   protect   变量   extend   static   abs   func   ret   


1.实例化类时,需要用 :: 调用常量
1 class MyClass3{
2     const CONST_VALUE = ‘A constant value‘;
3 }
4 
5 $obj3 = new MyClass3();
6 echo $obj3::CONST_VALUE;
2.使用静态方法或者静态变量 可以不实例化直接用类名 必须使用 :: 调用
 1 class MyClass4
 2 {
 3     public static $my_static = ‘静态方法的变量<br>‘;
 4 
 5     public static function doubleColon() {
 6         echo self::$my_static . "\n";
 7     }
 8 }
 9 
10 echo MyClass4::$my_static;
11 MyClass4::doubleColon();
3.抽象类和抽象方法说明
(1).抽象类不能被实例化
(2).抽象类中至少有一个方法是被声明为抽象的
(3).抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现。
(简单来说,也就是只能定义抽象方法的名称,不能在里面写逻辑处理)
(4).继承一个抽象类的时候,子类必须定义父类中的所有抽象方法
(5).子类重定义父类抽象方法时,声明等级必须大于等于父类
(6).子类可以定义父类中不存在的可选参数
(7).附属知识点 花括号来界定变量名的边界 "{}"
 1 abstract class AbstractClass
 2 {
 3  // 强制要求子类定义这些方法
 4     abstract protected function getValue();
 5     abstract protected function prefixValue($prefix);
 6 
 7     // 普通方法(非抽象方法)
 8     public function printOut() {
 9         print $this->getValue() . "\n";
10     }
11 }
12 
13 class ConcreteClass1 extends AbstractClass
14 {
15     public function getValue() {
16         return "重定义父类的抽象方法";
17     }
18 
19     public function prefixValue($prefix,$xinxin="") {
20         return "{$prefix}重定义父类的抽象方法{$xinxin}哈哈";
21     }
22 }
23 
24 $obj5 = new ConcreteClass1();
25 echo $obj5->getValue();
26 echo "<br>";
27 echo $obj5->prefixValue("多加个参数 "," 新的参数");

 

原生php 使用重点 要点 忽略点!

标签:就是   忽略   protect   变量   extend   static   abs   func   ret   

原文地址:http://www.cnblogs.com/zhaoxiwang/p/7991983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!