php面向对象(OOP)—类的继承

通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类以及超类。由已存在的类派生出的新类称为派生类,又称为子类

在PHP里面没有多继承,只有单继承,也就是说,一个类只能直接从一个类中继承数据, 这就是我们所说的单继承;

//定义一个“人”类做为父类

<?php
class Person
{
//下面是人的成员属性
var $name; //人的名子
var $sex; //人的性别
var $age; //人的年龄


//定义一个构造方法参数为属性姓名$name、性别$sex和年龄$age进行赋值
function __construct($name, $sex, $age) {
$this->name = $name;
$this->sex = $sex;
$this->age = $age;
}
//这个人可以说话的方法, 说出自己的属性
function say() {
echo "my name is:" . $this->name . " sex:" . $this->sex . " my age is:" . $this->age;
}
}

//定义一个子类“学生类“使用”extends”关键字来继承”人”类:
class Student extends Person
{
var $school; //学生所在学校的属性
function __construct($name,$sex,$age,$school)
{
parent::__construct($name,$sex,$age);
$this->school = $school;
}
//这个学生学习的方法
function study() {
echo "my name is:" . $this->name . " my school is:" . $this->school;
}
}

$student = new Student("guoshaoqing","nan","24","guangshihua");
$student->study();
?>

通过上面“Student“类的定义, Student类通过使用”extends”这个关键字把Person 类里的所有成员属性和成员方法都继承过来了,并扩展了一个所在学校成员属性”school”,和一个学习方法“study()”。现在子类”Student”里面和使用这个类实例出来的对象都具有如下的属性和方法:

学生类”Student”里面的成员属性有:

  • 姓名:name;
  • 年龄:age;
  • 性别:sex;
  • 学校:school;
  • 学生类”Student”里面的成员方法有:
  • 说话方法:say();
  • 学习方法:study();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值