中山php|最优网络 :中山做网站 中山php建站
最优良人
Posts Tagged With: 面向对象
PHP面向对象之继承
2011/08/14 at 02:26 » Comments (262)
用class关键字创建两个类,Son类继承Parents类: class Parents{ } class Son extends Parents { } 如果子类没定义构造函数,初始化子类时会自动调用父类的构造函数,并且函数里面可以调用子类的公共属性,但是如果调用子类的private私有属性则不可以,另外由 protected 所定义的类成员则可以被其所在类的子类和父类访问 class Parents{ function __construct(){echo $this->name;} } class Son extends Parents { var name = 'lin'; } $Son = new Son(); 如果子类定义了构造函数或者其他与父类同名的函数,会把父类函数覆盖,想调用父类该函数可以用parent:::func()来调用。如果父类函数用了final关键字,子类重定义该函数时就会报错。 more »PHP面向对象之抽象类与接口
2011/08/14 at 02:25 » Comments (262)
定义抽象类使用abstract关键字,主要用于定义规范,其函数必须被继承的子类全部重载后才能实例化,重载不全会报错 abstract class AbClass{ abstract function a1(); abstract function a2(); } class AbSonClass extends AbClass{ //全部重载父类方法 function a1(){ echo "抽象方法1"; } function a2(){ echo "抽象方法2"; } } 接口和抽象类非常相似,接口的引用,可以多引用,通过关键字implements 引用,全部为抽象方法,在引用它的子类里面也必须全部覆盖所有方法 interface InClass{ ...more »