php基础-6
类的继承和方法重写
<?php class people{
public function __construct($name, $age, $sex)
{
$this->age = $age;
$this->name = $name;
$this->sex = $sex;
} public function getInfo(){
$i = "这是一个$this->sex"."人,他的姓名人$this->name,他的年龄是$this->sex";
return $i;
}
} class Male extends people{
public function __construct($name, $age)
{
parent::__construct($name, $age, '男');
}
} $i = new Male("Bob", 18);
echo $i->getInfo();先创建一个父类people,然后创建一个子类Male使用关键字extends来继承people类,在Male中常见舒适化方法__construct,再在该方法中对父类的进行初始化。
将Male的初始化方法中的参数传给people中的初始化方法的,因为是男性(male),所以性别默认是男,所以Male的初始化只用有age,name这两个参数就可以了。完成父类的初始化之后,在对该子类进行实例化,实例化的对象就拥有父类和子类的所有方法了。
- 类方法的重写
<?php class people{
public function __construct($name, $age, $sex)
{
$this->age = $age;
$this->name = $name;
$this->sex = $sex;
} public function getInfo(){
$i = "这是一个$this->sex"."人,他的姓名人$this->name,他的年龄是$this->sex";
return $i;
}
} class Male extends people{
public function __construct($name, $age)
{
parent::__construct($name, $age, '男');
}
public function getInfo(){
// parent::getInfo();
$i = "这是一个$this->sex"."人";
return $i;
}
} $i = new Male("Bob", 18);
echo $i->getInfo();我们运行这段程序,可以看到,当父类和子类拥有相同的方法的时候,php会执行子类里面的方法。这里是我们将父类的方法重写了,如果想在子类里运行父类的方法,直接用parent::父类里面的方法。
 
php基础-6的更多相关文章
- java基础集合经典训练题
		
第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...
 - node-webkit 环境搭建与基础demo
		
首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...
 - js学习笔记:webpack基础入门(一)
		
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
 - Golang, 以17个简短代码片段,切底弄懂 channel 基础
		
(原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...
 - [C#] C# 基础回顾 - 匿名方法
		
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
 - HTTPS 互联网世界的安全基础
		
近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...
 - Swift与C#的基础语法比较
		
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
 - .NetCore MVC中的路由(1)路由配置基础
		
.NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...
 - .NET基础拾遗(5)多线程开发基础
		
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
 - .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]
		
方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...
 
随机推荐
- js代码之编程习惯
			
编程习惯: 异常处理 如果你没有使用异常处理的习惯,这可能是因为你并未真正的理解它的作用.当你正确使用异常处理之后,你会发现你的代码最显著的变化就是:少了很多的 if-else 语句 . 虽然在 JS ...
 - decltype的参数是左值时,得到一个引用类型
			
int* a = new int(10); decltype(*a) 得到的是引用类型:int&
 - ES6中的Promise.resolve()的作用
			
var foo = { then: (resolve, reject) => resolve('foo') }; var resolved = Promise.resolve(foo); 相当于 ...
 - U深度U盘启动盘制作教程
			
① 下载u深度u盘启动盘制作工具 ② 一个能够正常使用的u盘(容量大小建议在4g以上) 第一步:安装u深度u盘启动盘制作工具 双击打开已下载好的安装包,点击窗口中立即安装即可: 等待安装完成后,可以点 ...
 - loadrunner http协议性能测试脚本编写
			
性能测试其实测的就是接口的性能,不管是用工具录制还是自己写,都是围绕接口的,录制也是把接口录制下来而已,但是录制下来的脚本比较乱,会把很多相关的请求都录下来. 在这里我们手动写HTTP协议的get.p ...
 - MATLAB中mexFunction函数的接口规范(转)
			
reference:https://www.cnblogs.com/haoyul/p/5606720.html https://www.cnblogs.com/zeakey/p/3984733.htm ...
 - Oracle 定时器
			
我的代码 declare job number; begin dbms_job.submit( JOB=>job, what=>'addBytime;',// 这里要写分号,不然容易出错. ...
 - 玩转 React【第02期】:恋上 React 模板 JSX
			
往期回顾 前文中我们讲解了利用 ReactElement 来编写React程序,但是我们也看到这种方式编写 React 特别的麻烦,而且层级结构特别不清晰.今天我们来看一种优雅的编写React的代码的 ...
 - 18-10-18  Python 思维导图 很棒的
			
赠送 14 张 Python 知识点思维导图 来源 | Python学习联盟 本文主要涵盖了 Python 编程的核心知识(暂不包括标准库及第三方库). 按顺序依次展示了以下内容的一系列思维导图: ...
 - jetty调优
			
jetty服务器使用遇到一下内存溢出的问题: java.lang.OutOfMemoryError: unable to create new native thread 无法创建新的进程 方法: ...