php对象、面向对象
对象
万物皆对象
一切可见之物都是对象
一切不可见之物也是(抽象的事物也是对象);
对象包含两部分
1对象的组成元素
对象的数据模型又称为对象的属性,又被称为对象的成员变量
2.对象的行为
是对象的行为模型,被称为对象的方法
每个对象都是独一无二的,
对象是一个特定事物,他的职能是完成特定功能
对象是可以重复使用的
面向对象
面向就是在编程的时候一直把对象放在心上
面向对象编程就是在编程的时候数据结构(数据组成方式)都通过对象的结构进行存储。 (属性和方法)
对象的描述有利于大型业务的理解
对象和对象之间通过方法的调用完成互动
面向对象的思路
1 识别对象
任何实体都可以被识别为一个对象
2.识别对象的属性
身高,体重,长相。等等
对象里面存储的数据别识别为属性
对于不同业务逻辑,关注的数据不同。里面存储的属性也就不同
3.识别对象的行为
对象自己属性数据的改变
对象和外部交互
例子
桌子(对象)
组成元素:长宽高,重量,颜色等等
行为:发呆。
原则:
对象内部都是高内聚
对象只负责一项特定的职能(可大可小)
所有对象相关的内容都封装到对象内部
对象对外是低耦合的
外部世界可以看到对象的一些属性(并非全部)
外部世界可以看到对象一些方法(并非全部)
类的概念
物以类聚,把具有相似特性的对象归类到一个类中
类定义了这些相似对象拥有的相同的属性和方法
类的对象称为类的一个实例,类的属性和方法统称为类成员
列子
人就是一个类的定义
OOP(object OrientedProgramming) 是一种计算机编程架构 三个目标:重用性,灵活性,扩展性
类和对象的关系
类的实例化结果就是对象
对一类对象的抽象就是类
类命名规则
驼峰命名法,首字母大写,如果有两个单词,第二个单词的首字母也要大写
类的定义以关键字 class 开始,后面跟着类的名字{}
类的实例化为对象时使用关键字new new 之后紧跟类的名称和一对括号
对象中的属性成员可以通过->符号来访问
对象中的方法可以通过->符号来访问
构造函数在对象被实例化的时候自动调用 __construct()
$this是php里面的伪变量,表示对象本身
每次用new实例化对象的时候,都会用类名后面的参数列表调用构造函数
析构函数在程序执行结束的时候自动调用
__destruct()
(被用于清理程序使用的资源)
php对象、面向对象的更多相关文章
- javascript总结22: javascript的对象--面向对象编程
1 对象:JavaScript 中的所有事物都是对象:字符串.数值.数组.函数. 对象与程序的关系: 程序 = 基于对象操作的算法 + 以对象为最小单位的数据结构 此外: 面向对象的本质就是让对象有多 ...
- ABAP对象-面向对象(转)
转自:https://www.jianshu.com/p/f847c8f71438 1 面向对象基础 不多赘述何为对象与类.简单回顾一下在面向对象特性. 封装 限定内部资源的可见性 多态 相同名称的方 ...
- 对象(面向对象、创建对象方式、Json)
一.面向对象 面向过程:凡事亲力亲为,每件事的具体过程都要知道,注重过程 面向对象:根据需求寻找对象,所有的事都用对象来做,注重结果 面向对象特性:封装.继承.多态(抽象性) js是一门基于对象的语言 ...
- egon说一切皆对象--------面向对象进阶紫禁之巅
一.检查isinstance(obj,cls)和issubclass(sub,super) class Foo(object): pass obj = Foo() isinstance(obj, Fo ...
- Day10 类与对象-面向对象编程(1)
面向对象编程(OOP) 面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据. 抽象 三大特征: 封装 继承 多态 从认识论角度考虑是先有对象后有类.对象,是具体的事物.类,是抽象的, ...
- JavaScript基于对象(面向对象)<一>类和对象
javascript中一切皆对象,比如:Array,Date.....这些都是对象.javascript中没有class的定义,function既是定义函数,也可以是定义类.function Obj( ...
- JavaScript-创建日志调试对象(面向对象实例)
参考自http://www.2cto.com/kf/201312/261990.html IC.js文件 自己封装的js类库 /** * * @authors Your Name (you@examp ...
- php 类与对象 面向对象编程 简单例子
<?php class Foo { //类 名称为Foo public $aMemberVar = 'aMemberVar Member Variable'; //类变量 public $aFu ...
- 了解JavaScript 面向对象基础 & 原型与对象
面向对象语言中的对象 老是能听到什么基于对象, 面向对象. 什么是对象, 如果有面向对象基础的人可以无视了, 下面举个简单的例子给大家讲讲面向对象中, 对象的定义, 这个是比较通用的, 不过对于JS来 ...
- [Java入门笔记] 面向对象编程基础(一):类和对象
什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...
随机推荐
- 每天进步一点点------Allegro PCB命名规则
PCB命名规则-allegro 一.焊盘命名规则 1. 贴片矩形焊盘 命名规则:SMD+长(L)+宽(W)(mil) 举例:SMD90X60 2. 贴片圆焊盘 命名规则:SMDC+焊盘直径(D) ...
- 如何预测股票分析--k-近邻
在上一篇中,我们学习了线性回归,这一次来看看k近邻的表现 K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一.该方法的思路是:在 ...
- 最详细的linux安装php过程
本文主要和大家分享最详细的linux安装php过程,然后写好了nginx的安装配置,后面就是php的安装和mysql的安装,不过时间有限,而且放篇里也太长,所以都是分开来写,php安装完毕后就是mys ...
- C++指针和引用及区别
1.变量 首先最重要的,variable的定义,当你申明一个变量的时候,计算机会将指定的一块内存空间和变量名进行绑定:这个定义很简单,但其实很抽象,例如:int x = 5; 这是一句最简单的变量赋值 ...
- 矩阵快速幂+概率DP poj 3744
题意:在一条不满地雷的路上,你现在的起点在1处.在N个点处布有地雷,1<=N<=10.地雷点的坐标范围:[1,100000000]. 每次前进p的概率前进一步,1-p的概率前进1-p步.问 ...
- go基础_函数
函数的基本写法 func add(a int, b int) int { return a + b } 如果2个参数的类型一样,可以简写为 func add(a, b int) int { retur ...
- Go_runtime包
package main import ( "fmt" "runtime" "time" ) //写在init函数里,main函数运行之前就 ...
- 【C语言】用指针描述数组,实现选择法排序
#include <stdio.h> int main() { ], t; int i, j, max; printf("请输入10个数:\n"); ; i <= ...
- yii2 components
components顾名思义就是组件的意思,yii默认会根据 components 数组里面的键值去 vendor\yiisoft\yii2\web 里面查找这个键值得类,如果没有找到,再根据这个键值 ...
- P &R 12
Floorplan包含: IO floorplan: 涉及板级设计.封装设计的交互,接口协议(timing相关),对一些高速接口需要做特殊考虑(如信号完整性等). Power plan:芯片的电源和低 ...