类与面向对象基础(三)

一、继承

可以使一个类继承并拥有另一个已经存在类的成员属性和方法,被继承的类称为父类或基类,继承类为子类。通过extends关键字实现继承关系。通俗来说,要有继承就得有一个“根源”,这“根源”你可能想像你以后生了儿子或者女儿,他们会从你这里得到一些“东西(属性和方法)”,这样你的“后代”就是持有你(根源)所有的一些特征了。

产生“根源”类(父类或者基类)
语法:class father{
}

产生“后代”(子类)
语法:class son extends father{
}

PHP extends类继承示例代码:
  
class father{  
    protected $name;  
    function __construct($name){     //构造函数 
       $this->name=$name;   
    }   
 
    function work(){  
        echo "{$this->name}我在工作;
    }  
    function __destruct(){}      //析构函数

 
class son extends father{      //继承父类
    function play(){  
       echo "{$this->name}我在玩游戏;
    }       
}  
    
 $my_father=new father(“爸爸”);     //创建父类对象
 $my_father->work();

$my_son=new son(“儿子”); 
 $my_son->work(); 
 $my_son->play();

解析:在父类father里,我们定义了一般的属性和方法,然后定义子类。你可能发现在子类里内是没有构造函数和析构函数的,因为子类是继承了父类的所有方法,所以可以调用$my_son->work(); 这就是PHP类的继承了。另外要注意:PHP不能多层继承,如:class A extends B extends C,这样的继承在PHP中是无效的,PHP里只有单继承,不能多继承,需要其他办法变相“实现”多继承。

时间: 2024-10-11 11:52:28

类与面向对象基础(三)的相关文章

类与面向对象基础(一)

一.类与对象 类是面向对象程序设计的基本概念,通俗的理解类就是对现实中某一个种类的东西的抽象, 比如汽车可以抽象为一个类,汽车拥有名字.轮胎.速度.重量等属性,可以有换挡.前进.后退等操作方法. 通常定义一个汽车类的方法为: class Car { $name = '汽车'; function getName() {   return $this->name; } } 类是一类东西的结构描述,而对象则是一类东西的一个具体实例,例如汽车这个名词可以理解为汽车的总类,但这辆汽车则是一个具体的汽车对象

C++进阶 面向对象基础(三)

类的的定义: 初始化一般建议使用构造函数初始化列表形式: Person(const string nm, const string addr):name(nm), address(addr){} this指针: 类中使用this指针,特别是有些情况不能省略,例如在子类的方法中调用父类的某个成员变量,得加上this,不然有些编译器不通过,又例如 class Per{ Per& getName(){ return *this; } Per& getAge(){ return *this; }

Java面向对象基础三

1.函数的重载 2.构造函数的作用 (构造函数可以重载) 1.函数名必须和类名相同 2.没有返回值 3.使用 New 来调用构造函数 4.如果类中没有构造函数,编译器会自动帮忙加载一个参数为空.方法体为空的构造函数 5.如果类中已经存在构造函数,编译器就不会帮忙生成构造函数了.

【Java面向对象基础(三)】面向对象思想

[喵"的Android之路][基础篇(三)][Java面向对象基础]面向对象思想 1 面向对象的WWH 1.1 What--什么是面向对象 首先,要理解“对象”.在Thinking in Java中提到“Everything is an object”,即万物皆对象.这里的“对象”指的是任何实体或者任何可以当作实体看待的“虚幻的事物”.比如现实中的人(男人.女人.老人.小孩而...).动物(大象.狮子.猴子...).桌子.凳子.汽车.ATM机等等,也可以使看不见摸不着的空气(氧气.二氧化碳.氮气

附录A培训实习生-面向对象基础(1):类和实例

对象是一个自包含的实体,用一组可识别的特性和行为来标识. 面向对象编程,Object-Oriented Programming,其实就是针对对象进行编程的意思. 类就是具有相同属性和功能的对象的抽象的集合. 在编程过程中注意: 第一,类名称首字母记着要大写.多个单词则各个首字母大写. 第二,对外公开的方法需要用public修饰符. 实例,就是一个真实的对象. 实例化就是创建对象的过程,使用new关键字来创建. 下面是一个例子: 这是一个类, 1 using System; 2 using Sys

C#面向对象基础--类与对象

1.类与对象 类是面向对象编程的基本单元:类造出来的变量叫对象. 一个类包含俩种成员:字段与方法. 字段即变量,方法即函数. 面向对象思想:教给我们如何合理的运用类的规则去编写代码. 2.类的字段 字段代表了类中的数据.在变量之前可以加上public.private和protected表示字段的访问权限. 3.类的方法 (1).函数的概念 表达式: 返回值类型  方法名(参数列表) { 语句1: 语句2: ..... return 表达式: } 函数需要向外界返回一个值,由return语句实现.

面向对象基础(三)

类与对象 什么是类? 使用C#编程,所有的程序代码几乎都放在类中,不存在独立于类之外的函数.因此,类是面向对象编程的基本单元. 在绝大多数面向对象语言中,一个类都可以包含两种成员:字段与方法.字段与方法这两个概念是面向对象理论的术语,是通用于各种面向对象语言的.而在各种的具体面向对象语言中,可以简单的这样理解:字段即变量,方法即函数. 类的字段:代表了类中的数据,在类的所有方法之外定义了一个变量即定义了一个字段.变量前可以加上public.private和protected表示字段的访问权限.

C#面向对象基础(一)

面向对象这个词我很早就知道了,但具体是什么东西?什么是面向对象?一直以来都 不理解,只知道它有三大特征,即封装-继承-多态.直到学习完C#视频和看完设计模式 中面向对象基础后,对C#面向对象才有了一个大致的理解.下面这幅图是我对它的一个 宏观的认识. 一.基本知识 1.类成员 属性 C#不直接访问类的数据,通过get和set访问类中字段 方法 表示类的行为.方法可以构造,也可以重载 2.封装 每个对象都包含它能进行操作所需要的所有信息,这种特性就是封装 3.继承 如果两个对象A和B,可以描述为B

C#面向对象基础

面向对象不是取代面向过程的.类.对象."人"是类,"张三"是"人"这个类的对象.类是抽象的,对象是具体的.按钮就是类,某个按钮就是对象.对象可以叫做类的实例(Instance).字段Field(和某个对象相关的变量),字段就是类的状态(不同的对象可能不一样的状态就是字段).人这个类有姓名.年龄.身高等字段.类不占内存,对象才占内存.字段描述对象特点的数据.方法Method(函数),方法就是类能够执行的动作,比如问好.吃饭等.  类的继承,类之间可