知识点:ai
一、 a => abstract(抽象类)
  a) 抽象类的修饰符,修饰类和成员方法
  b) 注意:被修饰的类不能被实例化,被修饰的方法不能有程序体
  c) 如果某一个类使用abstract进行了修饰,则说明他内部有未完成的成员方法,两种解决方案,要么我们在本类中把未完成的方法实现,要么,我们让子类来继承他,完成未完成的功能,才可以实例化!
二、 I => interface(接口)
  a) Interface声明的是一个接口类
  b) Interface当中只能包含常量定义,和成员方法
  c) 注意:成员方法在interface类的内部不能有程序体
  d) Interface接口类我们只能使用implements去实现,而不能使用extends继承
  e) 使用interface声明的接口类,没有一个功能是实现的,只能让子类使用implements 实现它的所有功能或部分功能,如果子类只是先了部分功能,子类还是一个抽象类,此时,只能让孙子类去实现所有的功能,此时该接口类实现了!
三、 面向对象的三大特征:
  a) 封装
  b) 继承
  c) 多态
    i. 让一个类去完成多方面的工作

【php】面向对象(四)的更多相关文章

  1. Python之面向对象四

    面向对象进阶 一.关于面向对象的两个内置函数 isinstance   判断类与对象的关系    isinstance(obj,cls)检查obj是否是类 cls 的对象,返回值是bool值 issu ...

  2. python学习之面向对象(四)

    6.9 反射 反射是非常重要的内置函数之一. 反射是通过字符串去操作对象相关的属性,这里的对象包括:实列,类,当前模块,其他模块. 主要的四个函数: 查看: hasattr(对象,待查内容的字符串形式 ...

  3. 深入java面向对象四:Java 内部类种类及使用解析(转)

    内部类Inner Class 将相关的类组织在一起,从而降低了命名空间的混乱. 一个内部类可以定义在另一个类里,可以定义在函数里,甚至可以作为一个表达式的一部分. Java中的内部类共分为四种: 静态 ...

  4. 疯狂java学习笔记之面向对象(四) - this关键字

    Java中this关键字主要有以下两个方法: 1.this引用 - 可用于任何非static修饰的方法和构造器中,当this用于方法中时,它代表调用该方法的实例/对象;当this用于构造器中时,它代表 ...

  5. Objective-C面向对象(四)

    1.协议(protocol)和委托 1.1 规范.协议与接口 OC中协议的作用就相当于其他语言中接口的作用.协议定义的是多个类共同的公共行为规范,协议通常定义一组公用方法,但不提供实现. 1.2 定义 ...

  6. Python 面向对象(四) 反射及其魔术方法

    反射 reflection 也有人称之为自省 作用: 运行时获取.添加对象的类型定义信息,包括类 内建方法: getattr(object, name[, default])   返回object对象 ...

  7. Java学习笔记11(面向对象四:多态)

    多态: 举例:描述一个事物的多种形态,如Student类继承了Person类,一个Student对象既是Student,又是Person 多态体现为:父类引用变量可以指向子类对象 多态的前提:必须有子 ...

  8. python学习day22 面向对象(四) 约束&反射

    1.栈与队列 栈:类似弹夹,先进后出 队列:类似水管,先进先出 class Stack(object): """ 先进后出 """ def ...

  9. python 面向对象(四)反射

    ####################总结########## 1. isinstance: 判断xxx是否是xxx类型的(向上判断) type: 返回xx对象的数据类型 issubclass: 判 ...

  10. python 面向对象四 继承和多态

    一.继承 class Animal(object): def run(self): print('Animal is running...') class Dog(Animal): def run(s ...

随机推荐

  1. JAVA设计模式之-模板方法+(钩子函数)

    1.定义 允许子类对父类的一个或多个步骤进行重写.例如聚合支付场景中有很多共同的步骤,比如验签.四要素验证.风控等等,但是在支付的时候走不同的渠道可能在调用和参数上有很大的不同,比如有的是xml,有的 ...

  2. 聊聊count(*)

    count(*) 的实现方式 MyISAM 引擎把一个表的总行数存在了磁盘上,因此执行 count(*) 的时候会直接返回这个数,效率很高 InnoDB 引擎就麻烦了,它执行 count(*) 的时候 ...

  3. XSS(跨站脚本攻击)详解

    跨站脚本攻击XSS(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web ...

  4. python飞机大战简单实现

    小游戏飞机大战的简单代码实现: # 定义敌机类 class Enemy: def restart(self): # 重置敌机的位置和速度 self.x = random.randint(50, 400 ...

  5. Python 之 GIL 全局解释器锁

    GIL(全局解释器锁) GIL锁即全局解释器锁,是 CPython 解释器的特性.它的作用是保证了同一时刻只有一个线程执行 Python 字节码. 它并不是 Python 的特性,它的存在是 CPyt ...

  6. mysql & Tomcat使用问题记录

    mysql使用问题记录 1.mysql如何修改root密码 a.进入mysql安装目录b.登录 mysql -u root -pc.修改密码 mysql> SET PASSWORD FOR ro ...

  7. 13.unittest扩展

  8. dnSpy C#逆向工具

    dnSpy下载地址:https://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/dnSpy.shtml ...

  9. Python编写“求一元二次方程的解”

    #求一元二次方程的解 import math def equation(a,b,c): h=b*b-4*a*c #一元二次方程的解,百度来的 if h>=0: x1=(-b+math.sqrt( ...

  10. 树莓派3B+安装&卸载mysql

    需求 在树莓派上 安装Mysql 服务,并开启远程访问 步骤 安装 mysql server 1 $ sudo apt-get install mysql-server 我以为中间会让我提示输入 数据 ...