PHP 面向对象编程(2)
一些内建方法:
class Person {
public $isAlive = true;
function __construct($name) {
//这里我们创建了一个name的属性
$this->name = $name;
}
//dance方法 返回一个值
public function dance() {
return "I'm dancing!";
}
}
//实例化一个me类
$me = new Person("Shane");
//is_a判断$me是否属于Person类
if (is_a($me, "Person")) {
echo "I'm a person, ";
}
//property_exists判断$me是否有name这个属性
if (property_exists($me, "name")) {
echo "I have a name, ";
}
//判断方法是否存在
if (method_exists($me, "dance")) {
echo "and I know how to dance!";
}
继承:
class Shape {
//属性
public $hasSides = true;
}
//Square类继承了Shape类 通过extends关键字实现
class Square extends Shape {
}
$square = new Square();
// 判断如果存在hassides属性 就输出句子
if (property_exists($square,"hasSides") ) {
echo "I have sides!";
}
class Vehicle {
static function honk() {
return "HONK HONK!";
}
}
class Bicycle extends Vehicle{
public function bonk(){
return "Beep beep!";
}
}
$bicycle = new Bicycle();
// Bicycle类 继承了Vehicle类的方法
echo $bicycle->honk();
:
class Person {
}
class Ninja extends Person {
// Add your code here...
const stealth = "MAXIMUM";
}
// 访问类当中的常量 不需要实例化
echo Ninja::stealth;
class King {
// Modify the code on line 10...
public static function proclaim() {
echo "A kingly proclamation!";
}
}
// 调用方法 不需要实例化
echo King::proclaim();
PHP 面向对象编程(2)的更多相关文章
- angular2系列教程(六)两种pipe:函数式编程与面向对象编程
今天,我们要讲的是angualr2的pipe这个知识点. 例子
- 带你一分钟理解闭包--js面向对象编程
上一篇<简单粗暴地理解js原型链--js面向对象编程>没想到能攒到这么多赞,实属意外.分享是个好事情,尤其是分享自己的学习感悟.所以网上关于原型链.闭包.作用域等文章多如牛毛,很多文章写得 ...
- PHP 面向对象编程和设计模式 (1/5) - 抽象类、对象接口、instanceof 和契约式编程
PHP高级程序设计 学习笔记 2014.06.09 什么是面向对象编程 面向对象编程(Object Oriented Programming,OOP)是一种计算机编程架构.OOP 的一条基本原则是计算 ...
- Delphi_09_Delphi_Object_Pascal_面向对象编程
今天这里讨论一下Delphi中的面向对象编程,这里不做过多过细的讨论,主要做提纲挈领的描述,帮助自己抓做重点. 本随笔分为两部分: 一.面向对象编程 二.面向对象编程详细描述 ------------ ...
- python基础-面向对象编程
一.三大编程范式 编程范式即编程的方法论,标识一种编程风格 三大编程范式: 1.面向过程编程 2.函数式编程 3.面向对象编程 二.编程进化论 1.编程最开始就是无组织无结构,从简单控制流中按步写指令 ...
- 面向对象编程(OOP)
什么是面向对象编程,对于面向对象编程与面向过程编程的解释随处可见,个人认为对面向对象编程解释最好的一个定义是:依赖倒转原则是面向对象编程的标志,面向对象编程是一种思想,无论使用哪一种编程语言,如果在编 ...
- python 学习笔记7 面向对象编程
一.概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强..." ...
- 进击的Python【第七章】:Python的高级应用(四)面向对象编程进阶
Python的高级应用(三)面向对象编程进阶 本章学习要点: 面向对象高级语法部分 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 一.面向对象高级语法部分 静态方法 ...
- 进击的Python【第六章】:Python的高级应用(三)面向对象编程
Python的高级应用(三)面向对象编程 本章学习要点: 面向对象编程介绍 面向对象与面向过程编程的区别 为什么要用面向对象编程思想 面向对象的相关概念 一.面向对象编程介绍 面向对象程序设计(英语: ...
- 第二章 Matlab面向对象编程基础
DeepLab是一款基于Matlab面向对象编程的深度学习工具箱,所以了解Matlab面向对象编程的特点是必要的.笔者在做Matlab面向对象编程的时候发现无论是互联网上还是书店里卖的各式Matlab ...
随机推荐
- 商人过河问题(DFS)
问题描述:3个商人带着3个仆人过河,过河的工具只有一艘小船,只能同时载两个人过河,包括划船的人.在河的任何一边,只要仆人的数量超过商人的数量,仆人就会联合起来将商人杀死并抢夺其财物,问商人应如何设计过 ...
- 内存缓存机制and垃圾回收机制
一.内存缓存机制 var_dump(memory_get_usage(true)); $a="laruence"; var_dump(memory_get_usage(true)) ...
- ajax获取其他网站接口信息
MXS&Vincene ─╄OvЁ &0000023─╄OvЁ MXS&Vincene MXS&Vincene ─╄OvЁ:今天很残酷,明天更残酷,后天很美好, ...
- Script 语言的简单练习题 乘法口诀
<script>for(var i=1;i<=9;i++){ for(var k=1;k<=i;k++) { document.write(k+"x"+i+ ...
- php数组插入数据库这个功能该怎么实现
原文网址:https://segmentfault.com/q/1010000004048449 比如一个数组$a=array("a"=>"1",&quo ...
- python学习之认识字符串
1.打印字符串 >>> print ("hello world") hello world 2.使用“/"进行符号转义 >>> pri ...
- web服务器工作原理
Web服务器工作原理概述 转载自http://www.importnew.com/15020.html 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它 ...
- CentOS安装Nvidia显卡驱动提示Nouveau正在使用的问题
如题,在安装Nvidia官方提供的驱动时,提示Nouveau正在被使用,需要停用后才能继续安装,在网上搜了不少方法,各种尝试后均无效. 最后通过设置内核启动参数给屏蔽了,方法如下: 切换到root用户 ...
- C#读取XML文件中有乱码的处理办法
1.以文本的方式读取出xml内容 2.如果xml加载文本失败,替换掉乱码的内容 private static void loadxml(XmlDocument doc, string str) { t ...
- Ubuntu Linux 12.04 LTS amd64系统本地root提权
URL:http://www.ichunqiu.com/section/173 由于fusermount二进制调用setuid的(geteuid())重置RUID时,它调用/bin/mount才能使用 ...