面向对象
请叫我郝先生
学会理解,因为只有理解别人,才会被别人理解;学会忍耐,因为事已成现实自己无法改变;学会宽容,因为人生在世谁能无过呢,人无完人;学会沉默,因为沉默是金;学会说不,因为做不到的事不要强求,做自已力所能及的事;学会观察,因为大千世界无奇不有,只有眼观其变,才能明辩是非。
展开
-
面向对象三大特征和五大原则
面向对象的三大特性 1.封装 所谓封装,就是将客观事物封装成抽象的类,并且类可以把数据和方法让可信的类或者对象进行操作,对不可信的类或者对象进行隐藏。类就是封装数据和操作这些数据代码的逻辑实体。在一个类的内部,某些属性和方法是私有的,不能被外界所访问。通过这种方式,对象对内部数据进行了不同级别的访问控制,就避免了程序中的无关部分的意外改变或错误改变了对象的私有部分。2.继承 ...原创 2018-08-26 16:35:27 · 591 阅读 · 0 评论 -
PHP面向对象-静态方法和静态属性2-2-2
静态分为两个部分:静态属性和静态方法静态的东西都是给类用的(包括类常量),非静态的都是给对象用的静态属性在定义属性的时候,使用关键字static修饰的属性称之为静态属性。静态方法使用static关键字修饰的方法叫做静态方法。能用静态解决的问题,不用普通方法解决问题(静态的东西可以直接使用类访问,不需要通过对象实例化,因此节省了内存空间,提升了效率)。 从内存角度看:...原创 2018-08-21 22:15:00 · 251 阅读 · 0 评论 -
PHP面向对象-类常量的定义-2-1-1
类常量的定义定义在类里面的常量。类常量必须使用const关键字定义const 常量名 = 值;常量与对象的关系常量不能通过对象访问类常量的访问 类常量属于类,而不属于对象。对象是不能访问类常量。常量的访问必须通过类来实现:类名::常量名:: 叫做范围解析操作符在类的内部经常性的使用类来访问类中的成员,所在类的内部使用类进行访问的时候,有一个类似$this...原创 2018-08-21 22:13:15 · 875 阅读 · 0 评论 -
PHP面向对象--类代码回顾-1-1-3
php面向对象:成员方法、成员变量、类的常量成员方法之前我们说了php类的定义与实例化方法,举了个例子,创建了一个人的类。但是人不单单有属性,还有行为方式,比如人可以跑步,可以跳舞,可以唱歌,可以吃饭等等。那么,我们改如何去实现这些行为呢?接下来就要用到我们的成员方法去实现了。<?phpclass Preson{ public $name; publi...原创 2018-08-21 22:04:41 · 215 阅读 · 0 评论 -
PHP面向对象-面向对象含义-1-1-1
含义通过百度汇总而来。 面向对象编程技术的关键性观念是它将数据及对数据的操作行为放在一起,作为一个相互依存、不可分割的整体——对象。对于相同类型的对象进行分类、抽象后,得出共同的特征 而形成了类。面向对象编程就是定义这些类。类是描述相同类型的对象集合。类定义好之后将作为数据类型用于创建类的对象。程序的执行表现为一组对象之间的交 互通信。对象之间通过公共接口进行通信,从而完成系统功能...翻译 2018-08-21 21:58:17 · 209 阅读 · 0 评论 -
PHP面向对象-如何定义一个类1-1-2
面向对象基本概念 包括3部分内容: 面向对象分析(Object Oriented Analysis,OOA) 面向对象设计(Object Oriented Design,OOD) 面向对象编程(Object Oriented Programming,OOP)类的定义 类是属性和方法的集合【人类,动物类,植物类】 属性,即类内定义的变量,又称成员...原创 2018-08-21 21:49:40 · 1222 阅读 · 0 评论 -
PHP-面向对象-类常量设置-2-2-1
掌握清楚2个如何?如何设置一个常量,在类中如何访问一个常量,在类外类常量的定义定义在类里面的常量。类常量必须使用const关键字定义const 常量名 = 值;常量与对象的关系常量不能通过对象访问类常量的访问 类常量属于类,而不属于对象。对象是不能访问类常量。常量的访问必须通过类来实现:类名::常量名:: 叫做范围解析操作符在类的内部经常性的...原创 2018-08-23 20:35:43 · 219 阅读 · 0 评论 -
PHP面向对象之抽象类
在oop语言中,一个类可以有一个或多个子类,而每个类都有一个公有方法做为外部代码访问其的接口。而抽象方法就是为了方便继承而引入的。掌握2个为什么?什么是抽象方法?在类里面定义的没有方法体的方法就是抽象方法,所谓的没有方法体指的是,在方法声明的时候没有大括号以及其中的内容。而是直接在方法名后加一个分号结束即可。另外在声明抽象方法时还要加一个关键词 abstract来修饰。什么是抽象类?只...原创 2018-08-30 21:45:41 · 336 阅读 · 0 评论 -
PHP面向对象_对象串行化
在开发时有时候需要把一个对象在网络上传输,为了方便传输,可以把整个对象转化为二进制串,等到达另一端时,在还原成原来的对象。这一个过程简称串行化(序列化)案例:把一辆启程通过轮船运到美国去,因为汽车体积比较大 ,我们可以把汽车拆分开成小的部件,然后我们把这些部件通过轮船搬运到美国去,到了地方之后在进行组装。serialize()序列化把对象转化为二进制的字符串unserialize()反...原创 2018-08-30 21:29:19 · 220 阅读 · 0 评论 -
PHP魔术方法之__toString()方法
__tostring()方法:在直接输出对象引用的时候,就不会产生错误,而是自动调用了__tostring()方法,输出__tostring()方法中返回的字符串通俗来说就是 对象一般是使用print_r() 或 var_dump() 来打印访问但对于一般闲的人来说直接 使用 echo 输出对象时,必定会报错的,原因是对象无法使用echo的。这个时候如果想解决这个错误,咱们应该怎么操作...原创 2018-08-30 21:04:17 · 4368 阅读 · 1 评论 -
PHP魔术方法之__call()处理调用错误
在以后开发写代码时,如果在使用对象调用内部方法适合,调用的方法不存在程序就会报错,且然后程序退出不能继续执行?这个时候能否在程序调用内部不存在的方法是,提示我们调用的方法及参数不存在,底下代码执行呢?能否实现,郝先生带你领略一下奇迹?<?phpheader("content-type:text/html;charset=utf-8");// +-----------------...原创 2018-08-30 20:55:37 · 828 阅读 · 0 评论 -
PHP魔术方法之自动加载类 __autoload()函数
为什么使用自动加载?在以后编写代码时,有的时候需要做一个新增功能,上传功能,表单验证功能这个时候引入文件是一件非常头疼的事情,那么针对这件头疼的事情如何处理,今天由郝先生带各位一块了解一下?1.以前没有加载时代码如何书写?include "Mysql.php";//引入MySQL类include "Upload.php";//引入上传类include "Form.php";//引入...原创 2018-08-30 20:45:38 · 3481 阅读 · 1 评论 -
PHP魔术方法之__isset 和 __unset代码使用?
__isset()方法:学习之前一定要掌握isset()函数的功能使用。isset()是测定变量是否设定用的函数,传入一个变量作为参数,如果传入的变量存在返回true,否则返回false;$page=isset($_GET['p'])? $_GET['p']: "1";//意思:检测get能否接到值,如果能接收到的话获取get的值否则默认为1<?phpheader("c...原创 2018-08-30 20:29:28 · 617 阅读 · 0 评论 -
PHP-魔术方法-__get()和__set()
__get() 方法:用来获取私有成员属性值得,有一个参数,参数传入你要获取的成员属性的名称,返回获取的属性值。这个方法不用我们手工的去调用,是在直接获取私有属性的时候自动调用的。因为私有属性已经被封装上了,是不能直接获取值的。<?phpheader("content-type:text/html;charset=utf-8");// +------------------...原创 2018-08-30 20:10:31 · 604 阅读 · 0 评论 -
PHP面向对象之接口
PHP与大多数面向对象编程语言一样,不支持多重继承。也就是说每个类 只能继承一个父类。为了解决此问题,PHP引入了接口。接口的思想是指定了一个实现该接口的类必须实现的一系列方法。接口是一种特殊的抽象类,抽象类是一种特殊的类,所以接口也是一种特殊的类。 为什么说接口是一种特殊的抽象类呢?如果一个抽象类里面的方法都是抽象方法,那么我们就换一种声明方法使用“接口”,也就是说接口里面所...原创 2018-09-03 13:30:40 · 727 阅读 · 0 评论