1、对象。万物皆对象,在程序的眼中,对象就是世界亦可是尘埃。
面向对象 和 面向过程的区别?
面向过程,一切的行为都是基于过程,在它的眼中只有过程好才是真的好。
面向对象,一切的行为都是基于对象,在它的眼中只有未来或者结果,它不太在乎细节,所以在某种程度上,面向对象与面向过程是互补的,但是也是排斥的。
2、对象是怎么来的?
答: 在程序的世界里,对象都是由的类的实例化而来。简单的说就是通过一个类创建出
来的。
3、什么是类?
答:在程序的世界里,属性和方法共同组成一个类。在php中,基本的写法为:
class 类名{
里面可以加入属性
里面也可以加入方法
}
4、请注意面向对象编程简写为: OOP。
5、面向对象有三大特性:封装、 继承、 多态。
1、封装的好处:安全
2、封装的几大关键字:public(公开的) protected(受保护的) private(私
有的)
public :公开的,特指允许一切类来调用。
protected : 受保护的,特指允许本类和子类来调用。
private : 私有的, 特指只允许自己调用。
面向对象:
1、对象是由类创建而来
2、类相同,对象不相同。
3、类的基本的写法为: class 类名 {}
4、每个类都有自己的属性(变量)和行为(方法)。
5、在类中的变量可以成为类属性或者成员变量等。
6、所谓的实例化就是通过类去创建一个对象的过程。
7、在php中,类的实例化的写法为: $对象名 = new 类名();
8、在php中,调用一个对象的方法为: $对象名->方法名();
9、在对象的方法中,也有输入参数和输出参数,和普通的没有区别。
10、在类中的,可以有类属性的存在,表示方式为:
public $age = 10;
注意:在php4.x中常用 var 代替 public 。
11、其实在本类中,也可以用$this->属性名 或者本类的属性值
12、__construct 构造函数。构造函数特指在创建对象后,立即会调用的一个函数就叫构造函数。在PHP4中 该函数一般是用于相同类名的函数名去表示一个构造函数,在PHP5中,一般用__construct表示构造函数。(常用)
13、__destruct 析构函数,一般用于在对象被销毁时,会立即调用的函数。
14、静态属性或者静态函数,一般用于直接修改类属性或者直接调用类方法,调用方式为 :: ,如:类名::类属性 , 类名::类方法。 本类请用self,注意申明为静态属性的格式为:public(作用域) static 变量名, 申请为静态函数的格式为 static function 方法名。15、__set 魔术函数,如果设置的属性不存在,则调用这个函数。__get 魔术函数,返回这个类属性。可以判断是否存在这个类属性。
请注意:oop的编程核心就是实例化一个对象,也就是创建一个对象,那static是可以绕过对象直接去设置类属性(特指静态类属性),而abstract是特指这个类抽象类不能被实例化,但是可以通过其子类实例化。
16:继承:一般用于子类继承父类,并且可以使用父类中的所有的属性和方法。继承的关键字为 extends 一般的写法为 class 子类 extends 父类。
17、public 在继承中用处不明显,protected只能在子类里和父类里使用该属性或者方法,private 只能在本类中的使用属性或方法。
18、重写:特指子类重写父类的方法。注意:一般编译器的编译模式为先查看子类是否有被调用的这个方法,如果有则直接调用,如果没有则去查看父类的。
19、重载:特指子类重写父类的方法,但是输入参数不同。
20、抽象:抽象类不能被实例化,但是抽象类的子类可以被实例化。抽象类的关键字为: abstract
21、接口:接口的关键位 interface。如果继承这个接口就一定要实现,实现的关键字为 implements ,注意:interface中不能先具体的实现步骤,只能写接口名,实现在某个函数中。
22、克隆:__clone 。这个一般应用于将对象由浅拷贝到深拷贝的过程。深拷贝一般是创建内存空间。浅拷贝一般是直接指针引用。
23、__autoload: 一般用于当一个对象被创建会自动载入某些文件那么就用__autoload。
这是2016年来公司学习的第一个礼拜,一开始发现自己还不能很好的从新年的慵懒中恢复过来,学习的前两天没什么状态,感觉懒散散的,不过还是慢慢缓过来了。这周主要学习面向对象编程,学起来还是有点困难的,尤其在理解类和对象及行为之间的关系时,一开始发现特别抽象和难懂,经过几天的学习最后还是理解了。不过在做老黄布置的作业时,还是不能很好、很快地做出来,只能完成部分,然而在老黄亲自上手的时候,发现原来就是那么回事,都能看得懂,就是自己打不出。同时在发现周围同学都留下来已经在做老黄布置的项目时,感觉自己倍感压力,感觉自己和他们有不小的差距,所以我没有留下来,而是回去打代码、复习以前学的东西,相信不久我也能达到相应的水平。不和人家比,只和自己比,只要今天比昨天进步一点点,那也是进步,那今天也就没浪费。