首页 > 代码库 > PHP面向对象编程学习之一

PHP面向对象编程学习之一

继承
1、父类里面定义的类成员可以不用在子类中重复定义,节约了编程时间和代价
2、同一个父类的子类拥有相同的父类定义的类成员,因此外部代码调用他们的时候可以一视同仁。

3、子类可以修改和调整父类定义的类成员

<?php
class Animal {
	private $weight;
	public function getWeight()
	{
		return $this->weight;
	}
	public function setWeight($w)
	{
		$this->weight = $w;
	}
}

class Dog extends Animal
{
	/**
	*子类新增方法
	*/
	public function Bark()
	{
		echo "Wang~~Wang~~~ ";
	}
}

$myDog = new Dog();
$myDog->setWeight(20);
echo "Mydog's weight is ".$myDog->getWeight().'<br>';
$myDog->Bark();
?>


访问控制
1、面向对象的三种权限
(1)public:共有的类成员,可以在任课地方访问
(2)protected:受保护的类成员,可以被其自身以及其子类访问
(3)private:私有的类成员,只能被自身访问。

静态关键词(static)
1、静态属性用于保存类的共有数据
2、静态方法里面只能访问静态属性
3、静态成员不需要实例化对象就可以访问
4、类的内部可以通过self或者是static关键词访问自身静态成员
5、通过parent关键字可以访问父类的静态成员
6、可以通过类的名称在类定义外部访问静态成员


final成员
1、对于不想被任何类继承的类可以在class之前添加final关键字
2、对于不想被子类重写的方法,可以在方法定义的前面添加final关键字


数据访问
1、parent关键词可以用于访问父类中被子类重写的方法
2、self关键字可以访问类自身的成员方法,也可以用于访问自身的静态成员和类常量;不能用于访问类自身的属性;使用常量的时候不需要再常量名称前面添加‘$‘符号
3、static关键字用于访问类自身定义的的静态成员,访问静态属性时需要在属性前面添加‘$’符号。

PHP面向对象编程学习之一