面向对象吉林省三扬科技咨询有限公司课程内容课程内容面向对象基础继承抽象接口多态吉林省三扬科技咨询有限公司面向对象基础面向对象的基本概念类的声明对象的实例化$this关键字构造方法析构方法关键字static和const吉林省三扬科技咨询有限公司面向对象的基本概念对象描述客观事物的独立的实体。举例:运动员、学生、面包、西瓜类具有相同语义特性的对象的集合。举例:人、食物、窗户吉林省三扬科技咨询有限公司面向对象的基本概念类的访问控制具体应用规则如下:由public所定义的类成员可以在任何地方被访问由protected所定义的类成员则可以被其所在类的子类和父类访问由private定义的类成员则只能被其所在类访问如果没有设置关键字,则该成员会被设置成默认的public吉林省三扬科技咨询有限公司面向对象的基本概念成员变量当变量被定义在类中,就被称为成员变量(也称为成员属性)在成员变量名前加关键字public、private或protected可以控制成员变量的访问权限。成员方法当函数被定义在类中,就被称为成员方法在成员方法名前加关键字public、private或protected可以控制成员方法的访问权限,默认为public。吉林省三扬科技咨询有限公司类名{var$成员变量名称;function成员方法名称([参数]);……}吉林省三扬科技咨询有限公司对象的实例化创建对象的过程称为对象实例化。$对象名称=new类名称();$对象名称-成员属性;$对象名称-成员方法;吉林省三扬科技咨询有限公司关键字$this关键字的概念在一个类中并且只能在一个类内部使用,用来获取该类中某个成员变量的值或者调用该类中的成员方法。$this关键字的语法格式$this-成员变量$this-成员方法吉林省三扬科技咨询有限公司构造方法构造方法的概念一个类中只能创建一个构造方法。构造方法不能主动被调用,只有在使用关键字new创建对象时才会调用构造方法,所以构造方法通常用来执行一些初始化任务。构造方法的语法格式function__construct([参数]){……}吉林省三扬科技咨询有限公司析构方法析构方法的概念与构造方法相对的就是析构方法,析构方法会在到某个对象的所有引用都被删除或者当对象被显式销毁时执行,也就是对象在内存中被销毁前调用析构方法。析构方法的语法格式function__destruct(){……}吉林省三扬科技咨询有限公司static在PHP中,使用关键字static修饰的属性和方法称为静态属性和静态方法。静态属性和静态方法不需要在类被实例化的情况下就可以直接使用。const在PHP中,使用关键字const来修饰类常量。类常量通常要大写,如果类常量由多个单词组成,建议使用下划线分隔开。类常量在定义后它的值就不能有任何改变,也就是说类常量只能被赋值一次,如果给类常量重新赋值会出错。吉林省三扬科技咨询有限公司类外部的使用语法格式类名称::成员属性名称类名称::成员方法名称类内部的使用语法格式self::成员属性名称self::成员方法名称吉林省三扬科技咨询有限公司继承继承的概念继承是指一个对象直接使用另一对象的属性和方法。类的继承就是指子类共享父类的数据库结构和方法的一种机制,这是类与类之间的一种关系的体现。继承可以提高代码的重用性,提高软件开发的效率。继承的语法格式class子类名称extends父类名称{新增加的成员方法;……}吉林省三扬科技咨询有限公司抽象类抽象的概念抽象类是一种不能被实例化的类。在抽象类里的成员方法都是没有具体实现的空方法。抽象类可以用来为子类设置功能定义。抽象的语法格式abstractclass抽象类名称{成员变量列表成员方法列表}吉林省三扬科技咨询有限公司接口接口的概念接口是一组函数声明的集合。接口的成员方法不能实现,只能由实现该接口的类去实现成员方法的具体内容,而且接口不能被实例化,所以接口不存在构造函数和析构函数。接口的语法格式interface接口名称{functionfunctionName1();functionfunctionName2();……}吉林省三扬科技咨询有限公司多态多态的概念多态是指对象可以在运行时刻根据传递的对象参数,决定调用哪一个对象的方法。多态既可以使程序设计拥有更高的重用性,同时又能隔离不同对象的同一行为,利用多态的面向对象思想开发的代码,会减少很多逻辑控制语句。多态的实现方式通过继承实现多态通过接口实现多态吉林省三扬科技咨询有限公司案例场景模拟通话程序使用面向过程编程方式实现编写函数dail()来模拟实现拨打电话号码。编写函数wait()来模拟实现等待接通。编写函数talk()来模拟实现通话。逐一调用以上函数来模拟实现通话的全过程。吉林省三扬科技咨询有限公司案例场景模拟通话程序使用面向对象编程方式实现定义Phone类,用来表示电话。定义Person类,用来表示人。创建Person类和Phone类的实例化对象调用成员方法来实现模拟通话全过程。