0x01反序列化学习第一章
面向过程:(看过程)
面向过程是一种以“整体事件”为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数。
面向对象:(看结果)
面向对象是一种以“对象”为中心的编程思想,把要解决的问题分解成各个“对象”;
对象是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象。
对象三个特征:行为、形态、表示;
1、类or对象
类:(对象封装到一起)
定义事物的抽象特点,它是将数据的形式和这些数据上的操作封装在一起;
对象是具有类的类型,是对类的实例;
类内部构成:成员变量(属性)+成员函数(方法)
成员变量:(动作)
定义在类内部的变量。该变量的值对外是不可见的但是可以通过成员函数访问在类被实例化为对象后该变量即可成为对象的属性。
成员函数:(方法)
定义在类的内部可用于访问对象的数据。
成员函数可以访问成员变量,类内是无法被调用的
继承:
继承:继承性是子类自动共享父类数据结构和方法的机制,是类之间的一种关系。
在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把一个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
父类:一个类被其它类继承,可将该类成为父类,或基类,超类。
子类:一个类继承其他类称为子类,也可称为派生类。
class Class_name{ //成员变量声明 //成员函数声明 } class hero{ var $name = 'abc'; var $sex; function jineng($var1) { echo $this->name; echo $var1; } } ?> highlight_file(__FILE__); class hero{ var $name; var $sex; function jineng($var1) { echo $this->name." "; echo $var1." "; } } $cyj= new hero(); $cyj->name='chengyaojin'; $cyj->sex='man'; $cyj->jineng('zuofan'); print_r($cyj); ?>
类的修饰符:
在类中直接声明的变量称为成员属性(也可以成为成员变量)。
可以在类中声明多个变量,即“对象”中可以有多个成员属性,每个变量都存储“对象”不同的属性信息。
访问权限修饰符:对属性的定义
常用访问权限修饰符:
public:公共的,在类的内部、子类中或者类的外部都可以使用,不受限制;
protected:受保护的,在类的内部、子类中可以使用,但不能在类的外部使用;
private:私有的,只能在类的内部使用,在类的外部或者子类中都无法使用;
注:子类调用类,public可用,protected可用,private不可用;
类/对象:
类是对象的抽象,对象是类的具体实例;
类是想法,把类实例化(new),调用具体的值后就变成对象了
类的成员方法:
在类中定义的函数被称为成员方法。函数实现的是某个独立的功能:
成员方法实现的是类中的一个行为,是类的一部分。
可以在类中声明多个成员方法,成员方法的声明和函数声明完全一样,只不过在声明成员方法时可以在function关键字前加一些访问权限修饰符,如oublic、.protected、private(可以省略,默认为public