php面向对象三大特性之一继承

继承的好处

1.开放性、可扩展性

2.增加代码的重用性

3.提高了软件的可维护性

继承的使用:

1.继承就是用子类去扩展父类 ,声明一个子类,使用extends关键字去继承父类

c++属于多继承,同一个类可以有多个父类

php和java属于单继承,同一个类只能有一个父类

不管是单继承和多继承,都可以有多个子类

2.只要在设计两个类时,有可以共享的方法时,就可以提取出来作为基类

3.子类可以从父类继承所以内容,包含成员属性,成员方法,构造方法。。。,在子类可以直接使用。但是private私有方法和属性只能在本类使用,子类也不能使用,如果想使用父类的方法有不想让外部使用可以使用protected修饰成员

4.子类可以声明和父类相同的方法名,既子类覆盖父类的方法

5.在子类中调用父类被覆盖的方法使用 

    父类名::方法名

    parent:方法名

6.子类中重载方法,不能低于父类中访问权限

<?php
	header('content-type:text/html;charset=utf-8');
	class Person{
		private $name;
		private $sex;
		public $age;
		//传统的构造方法 php4
		function Person($name="",$sex="",$age=""){
			$this->name= $name;
			$this->sex= $sex;
			$this->age= $age;
		}
		//构造方法魔术方法 php5
		function __construct($name,$sex,$age){
			$this->name= $name;
			$this->sex= $sex;
			$this->age= $age;
		}
		function say(){
			echo "我的名字:$this->name ,我的年纪:$this->age,我的性别:$this->sex 。<br>";
			$this->run();
		}
		private function run(){

		}
	}

	class Person2 extends Person{
		//覆盖父类的方法
		function say(){
			parent::say();//用来调用父类被覆盖的方法
			echo "大家都说我很聪明<br>";
		}
	}

	$person = new Person("张三","男","30");
	$person2 = new Person2("张三","男","30");
	echo $person2->say();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值