PHP面向对象三大特性②

 1 <?php
 2 //继承
 3 //概念:如果一个类有子类,那么该子类会继承父类的一切东西(私有成员访问不到)
 4 //在定义子类的时候需要加一个关键字:extends
 5 //特点:1.单继承,就是一个儿子只能有一个父亲,一个类只能有一个父类,但一个父类可以有多个子类
 6 //     2.如果父类中有构造函数,子类在实例化的时候要按照父类构造函数的标准来实例化
 7 //子类对父类方法的重写:在子类中写一个同样的方法
 8 //final:用来修饰类的,代表该类是个最终类(无法被继承)    
 9 class Info 
10 {
11     const π=3.14; //定义常量
12     public static $class;//定义静态变量用 static
13     public $code;
14     protected $name;
15     private $sex;
16     
17     function Say()
18     {
19         echo self::π;
20         echo self::$class;//普通方法里面可以调用静态成员
21         echo "hello";
22     }
23     static function Test() //静态方法
24     {
25         echo self::$class; //只能调用自身类里面的静态成员
26         echo "静态方法";
27     }
28 }
29 
30 class Test extends Info
31 {
32     public $birthday;
33     function Run()
34     {
35         echo "run";
36     }
37     function Say()
38     {
39         parent::Say();//调用父类的Say方法
40         echo "<br>";
41         echo "Test Say";
42     }
43 }
44 $t =new Test("女");
45 $t->code ="p001";
46 //$t->Say();
47 //$t->Run();
48 
49 Info::$class ="0305";  //访问静态成员
50 //Info::Test();
51 $t->Say();
52 echo Info::π+3;
53 
54 
55 
56 
57 //静态成员
58 //普通成员变量是属于对象的,不是属于类的(调用的时候是用对象来调用的)
59 //什么叫做静态:静态成员是属于类的,不是属于每个对象的
60 //定义静态成员用stadic 关键字修饰
61 //静态方法里面无法调用普通成员变量,可以用self调用静态成员
62 //self 代表该类,$this 代表该对象
63 
64 
65 ?>
原文地址:https://www.cnblogs.com/Itwonderful/p/5441707.html