1、$this是什么

当前类实例化的对象

2、访问对象中的成员

对象->成员

3、构造方法

通常用来初始化对象的属性,不用把属性写死,不同的对象就有了不同的属性

4、get、set的用法

通常将属性设为protected,利用getXxx和setXxx方法来设置和获取属性的值,避免外部随意的更改,同时还可以对对象进行过滤

4、类的封装

public方法可以在类外访问,相当于提供给外部的接口

private方法只能在类内(即类的大括号内),外部不能直接访问,只能通过其他public方法来调用,就像电脑的开关,按电源键就可以开机,你不用知道它背后一系列的运转

protected,同private,不过可以在其他的类中继承

5、类的继承与重写 (extends)

继承的类可以访问父类的public和protected方法或属性,避免了代码的重写

继承的类重写父类的方法只需取与父类同样的方法名,在里面写自己的代码即可

6、抽象类(abstract)

抽象类是用来继承的,不能直接实例化,抽象方法不用写方法体

作用是硬性的规定子类需要实现的方法,不实现不能实例化

7、接口(interface)

继承使用implements

保证代码的一致性

8、命名空间与自动加载(namespace)

避免重名冲突,避免每次使用类前require的操作

申明类前有namespace 文件位置

namespace app/Admin;

使用类前有use namespace/类名

use app/Admin/User;

 

9、静态变量和静态方法

可以看作是全局性的方法

不用实例化对象即可使用

使用方法:类名::成员

10、const变量

const主要是用于一些硬性的规定数据和约定俗成的数据码上面,可在类外使用,只能在定义处修改,比如我们的http状态码

定义:const ABC=12;

使用:类名::ABC;

11.Trait

trait技术的作用一:代码重用,二:在已有的代码中插入自己的代码

用法,定义一个trait类,在里面写需要重用的方法

trait  ABCTrait{

  function XXX(){

  }
}

在其他的类里需要引用这些方法的话,在类中use一下这个类即可调用其中的方法

class BBB{
use ABCTrait;
}

整理自www.laravist.com

PHP面向对象知识点总结的更多相关文章

  1. C#基础总结之八面向对象知识点总结-继承与多态-接口

    .方法深入讲解(返回值,形参与实参) 方法 public int getName(int i,int j) { int sum = i + j; return sum; } .利用泛型存储对象数据 . ...

  2. C#基础总结之七面向对象知识点总结1

    class Class //定义一个类 名字是Class { ; string NAME; string deptName; ; //如果是常量 只能获取,不能赋值 public string Nam ...

  3. python全栈开发 * 23 面向对象 知识点汇总 * 180704

    23 面向对象 -----特殊方法 1. isinstance(obj,类名) 判断对象是否是此类实例化或者此类的子类实例化出来的class A:passclass B(A):passb1=B()pr ...

  4. Java面向对象知识点

    对象:一切客观存在的事物都是对象 语法部分: 类的概念:1.类是对象的抽象 2.类是客观事物在人脑中的主观反应 3.类是对象的模板 类的设计: 属性:定义位置:类以内,方法以外 实例变量:1 有默认值 ...

  5. js面向对象知识点之对象属性 创建对象 总结中

    昨天面试出了一道面试题 本人我做错了 于是痛定思痛 再过一遍面向对象 var name="一体机"; var value="infolist"; //构造函数 ...

  6. Java 面向对象 知识点基础浅谈

    1.类和对象的关系 类是一个抽象的模板,对象是根据模板制造出来的,只有类建立之后,对象才可以在类中实例化对象.举个例子讲:我要用黄金浇筑一块砖,我会在一个模型里进行,这样才能有砖的形状,那模型即是类, ...

  7. python全栈开发 * 22 面向对象 知识点汇总 * 180703

    22 面向对象 -----属性,类方法,静态方法,反射一.属性1.属性的定义:将方法伪装成属性,虽然在代码层面上没有任何高深之处,但让其看起来更合理. (类似于属性的方法)class Person: ...

  8. python全栈开发 * 19 面向对象 知识点汇总 * 180701

    19 面向对象初识2 一.类的名称空间1.对象的名称空间对象的名称空间中有类对象指针,对象可以通过"类对象指针"找类中的"静态变量"(静态字段),也可以用对象找 ...

  9. python全栈开发 * 18 面向对象知识点汇总 * 180530

    18 面向对象初识1class person: level="高级动物" mind="有思想" def __init__(self,name,age,gent, ...

  10. python(二)面向对象知识点

    模块 别名 import my_module as xxx(别名) 先导入内置模块 再导入第三方模块 再导入自定义模块 from my_module(导入的文件) import *(变量) __all ...

随机推荐

  1. laravel5.5契约

    无规矩不成方圆, Laravel 的契约是一组定义框架提供的核心服务的接口,规定了实现该接口的规范. 为什么要使用接口 首先,让我们来看一些高耦合缓存实现的代码.如下: <?php namesp ...

  2. VS Extension+NVelocity系列(二)——让VS支持 NVelocity的智能提示(上)

    一.基础概念 应该庆幸的是,VS的插件是靠着MEF实现而不是MAF,这让你所做的工作减轻了许多.如果在这之前,您已经了解了MEF的原理,我想对于VS插件的编写,您应该是很容易就能理解的.看看几个VS2 ...

  3. USACO Section1.4 Arithmetic Progressions 解题报告

    ariprog解题报告 —— icedream61 博客园(转载请注明出处)-------------------------------------------------------------- ...

  4. 21、AngularJs知识点总结 part-3

    1.选择框select 在 AngularJS 中我们可以使用 ng-option 指令来创建一个下拉列表,列表项通过对象和数组循环输出,也可以使用ng-repeat 指令来创建下拉列表: 区别:ng ...

  5. nginx 快速查看配置文件的方法

    查看nginx实际调用的配置文件 1.查看nginx路径 ps aux|grep nginx root ?? S :43上午 :00.08 nginx: worker process root ?? ...

  6. Ext JS 的一个非常好的学习网站

    起飞网 http://www.qeefee.com/zt-extjs 发现一个非常好的学习ExtJS的中文网站

  7. 解压大文件提示C盘空间不够的问题

    问题说明 今天在服务器解压一个之前上传的数据,大概有180GB,虽然当前盘还有984GB的富余. 但是当我选择解压到当前文件夹时,解压到半路还是提醒C盘的空间不足. 原理 压缩文件解压会在C盘创建一个 ...

  8. 【GXZ的原创】平衡树性能测试

    本文作者为 GXZlegend ,转载请注明 出处 ,谢谢! 〇.序言 前些日子闲的蛋疼做了个平衡树性能测试... 主要是因为学会的平衡树越来越多,做题时却不知道写哪个... 本想结合效率和代码复杂度 ...

  9. POJ A Simple Problem with Integers | 线段树基础练习

    #include<cstdio> #include<algorithm> #include<cstring> typedef long long ll; #defi ...

  10. 2017 多校4 Security Check

    2017 多校4 Security Check 题意: 有\(A_i\)和\(B_i\)两个长度为\(n\)的队列过安检,当\(|A_i-B_j|>K\)的时候, \(A_i和B_j\)是可以同 ...