PHP面向对象 封装与继承
知识点:
PHP封装三个关键词:
一、public 公有的,被public修饰的属性和方法,对象可以任意访问和调用
二、private 私有的,被private修饰的属性和方法,只能在类内部的方法可以进行调用,或者被子类重写后用public才可以随意调用
三、protected 受保护的,被protected修饰的属性和方法,在父类和子类的方法都可以访问调用,不支持对象外部访问调用
PHP继承概念
PHP子类可以通过extends继承父类的属性和方法,再原有基础上添加或者重写属性方法,注意:PHP是单继承,即一个父类只能有一个子类,如果想一个父类被多个子类继承,需要使用接口。
一、子类继承父类的属性和方法,并非全部,被private修饰的方法和属性无法继承
二、子类方法或属性名如果与父类方法名一致,则进行了对远方法和属性的重写
三、关键词final 修饰的类名或方法无法被继承或重写
代码:
<?php
header("Content-type:text/html;charset=utf-8");
error_reporting(E_ALL);
class people{
public $name;
public $age;
public function __construct($name,$age){
$this->name = $name;
$this->age = $age;
}
public function tellname(){
echo '我的名字是'.$this->name;
}
private function tellage(){
echo '我是年龄是'.$this->age;
}
}
$zhangsan = new people('张三',20);
$zhangsan->tellname();//输出成功
//$zhangsan->tellage();提示致命错误
echo "<br>";
class student extends people{
public $class;
public $sex;
public function tellname(){
echo '大家好,我的名字是'.$this->name;
}
public function tellage(){
echo '我的岁数是'.$this->age;
}
}
$xiaoming = new student('小明',15);
$xiaoming->tellname();//输出成功
$xiaoming->tellage();//重写后输出成功
?>
页面提示:
转载于:https://www.cnblogs.com/chengzhongde/p/6915888.html
PHP面向对象 封装与继承相关推荐
- 面向对象-封装、继承、多态
面向对象-封装.继承.多态 面向对象-封装 一.封装: private 数据类型 _名字; --成员变量 public 默认一致 名字 属性 { get{ return _名字; } set{ ...
- Python基础day09【面向对象(封装、继承、多态)、重写、私有权限】
视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员] Python基础day09[面向对象(封装.继承.多态).重写.私有权限] Python基础day ...
- JavaScript(JS) 面向对象(封装、继承、多态)
面向对象是把事物给对象化,包括其属性和行为.面向对象编程更贴近实际生活的思想.可以简单的理解面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象.本文主要介绍JavaScrip ...
- PHP的面向对象 — 封装、继承、多态
K在上一次的基础篇中给大家介绍了一下关于PHP中数组和字符串的使用方法等,这一次,K决定一次性大放送,给大家分享一下PHP中面向对象的三大特性:封装.继承.多态三个方面的知识. 一.封装 在PHP中, ...
- Java面向对象封装和继承
面向对象 什么是面向过程.面向对象? 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. 面向过程的程序设计方式,是遇到一件事时,思考"我该怎么做",然后一步步实现的过程. ...
- Java面向对象封装和继承,阿里正式启动2021届春季校招
封装,它也是面向对象思想的特征之一.面向对象共有三个特征:封装,继承,多态.接下来我们具体学习封装. 封装的表现: 1.方法就是一个最基本封装体. 2.类其实也是一个封装体. 从以上两点得出结论,封装 ...
- Educoder- 《JAVA从小白到大牛》(第二章)2-3 Java面向对象 - 封装、继承和多态的综合练习
提示:本文章为个人学习记录,仅供参考学习,禁止转载,支持交流与讨论. 文章目录 第1关:通关任务一 任务描述 相关知识 面向对象思想 封装 继承 `super()`和`this()` 编程要求 测试说 ...
- Java面向对象 - 封装、继承和多态的综合练习
面向对象的三个基本特征: 封装,就是把客观的事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的信息隐藏.隐藏实现细节,使得代码模块化. 继承,可以使用现有类的所有功能 ...
- Java面向对象 - 封装、继承和多态
简介 面向对象的三个基本特征是:封装.继承和多态. 封装可以隐藏实现细节,使得代码模块化:继承可以扩展已存在的代码模块(类).封装和继承的目的都是:代码重用.而多态则是为了实现另一个目的 -- 接口重 ...
- 头歌实践实践教学平台:Java面向对象 - 封装、继承和多态的综合练习
第1关:封装.继承和多态进阶(一) 任务描述 本关任务:按要求编写一个Java应用程序,巩固Java面向对象知识. 相关知识 为了完成本关任务,我们回顾一下前面所学知识:1.面向对象思想 :2.封装: ...
最新文章
- 计算机硬件系统的ppt,计算机硬件系统.ppt
- python 赋值、表达式
- mandatory oracle 字段,Oracle 数据库需要在2019年April之前Mandatory升级的说明
- 《操作系统》实验报告——熟悉Linux基础命令及进程管理
- h5应用数据加密_邦伲德H5场景个性化开发,打破传统营销局限
- 玩转HTML5+跨平台开发[4] HTML表格标签
- 全网首秀,我用动画展现Pycharm十大实用技巧
- vSAN其实很简单-5分钟学会如何向VMware报修故障(内含福利)
- 邮件服务器实用技巧和选购指南
- SQL 的基本使用概念简介
- 调用腾讯的API接口
- arm-linux-gcc交叉编译器和gcc编译器的下载地址
- 2021-07-20 诺瓦星云笔试复盘
- VGG16网络结构图及pytorch 代码实现
- mysql 员工登记表_员工部门信息表-myemployees
- 世嘉MD游戏开发【十三】:音乐和音效
- bootbox.js中confirm()方法的使用
- 软件测试——前言介绍
- matlab中unifrnd函数用法,概率和统计的MATLAB指令
- 外边距合并及解决方法
热门文章
- [转]DevExpress GridControl 关于使用CardView的一点小结
- CentOs中iptables配置允许mysql远程访问
- docker 全部杀掉
- unity导入素材时材质丢失素材变成粉红色的解决方法
- matlab练习程序(RGB2HSL、HSL2RGB)
- Zookeeper系列四:Zookeeper实现分布式锁、Zookeeper实现配置中心
- Python 模块 timedatetime
- ZooKeeper3.4.5-最基本API开发
- keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect
- ListString 和 ArrayListString的区别