zoukankan      html  css  js  c++  java
  • 类和对象

    类和对象

    对象是对客观事物的抽象,类是对对象的抽象。
    类是一种抽象的数据类型,其定义为:
    class 类名{
    //成员变量
    //成员方法 }
    它们的关系是,对象是类的实例,类是对象的模板。

    造对象
    $r = new 类名

    面向对象的三大特性:封装 继承 多态

    ·封装
    目的:让类更加安全。
    方法:不让外界直接访问类成员。

    具体做法:

    ·做法一:
    1、成员变为私有:访问修饰符
    ·public,所有的都可以访问
    ·private,只有该类可以访问,子类也无法访问
    ·protected,只有该类和子类才能访问

    2、造成员方法来操作变量

    ·做法二:
    1、使用类里提供的__get()和__set()方法


    ·构造函数:
    在造对象时,对成员变量进行初始化
    1、执行时间特殊,造对象的时候就自动执行
    2、写法特殊,__construct()

    2、继承:子类可以继承父类的一切
    关键字:extends
    特点:单继承:一个子类只能有一个父类,一个父类可以派生多个子类。
    方法重写‪:子类里建一个和父类重名的方法,会将父类方法覆盖;如果不想覆盖而是扩展使用的是 parent::Say();

    3、多态:当父类引用指向子类实例,由于子类对父类的方法重写,所以父类引用在调用该方法的时候表象出来的不同就是多态。
    条件:1、必须继承;2、子类必须对父类方法重写;3、父类的引用指向子类的实例

    ·静态 关键字:static
    普通对象是属于对象的;静态对象是属于类的;普通方法里可以调用静态成员;静态方法里不能调用普通成员用类的名字调用:ren::say();;self::say();self代表自身的类调用静态变量

    ·抽象类 关键字:abstract
    抽象类不能实例化,可以被继承

    ·接口 关键字:interface,不加class关键字
    接口里面有成员方法,但是没有函数体
    实现接口使用的关键字:implements 不是 extends
    子类必须实现接口的所有方法

    ·析构函数
    写法特殊:__destruct 执行特殊:在对象销毁的时候执行,自动调用
    作用:在对象销毁之前,将内存释放,连接关闭等等

    ·__tostring()方法
    调用对象时自动调用,把对象变成字符串输出

    ·克隆 关键字:clone

    ·加载类,引用类
    关于根路径:php里/代表根路径,是指该文件所在的磁盘比如:D:/
    html里/代表根路径,是指服务器文件夹:www
    a.include("/wamp/www/0607/ren.class.php");
    b.include "ren.class.php";
    c.require ("ren.class.php");
    d.require "ren.class.php";
    e.require_once ("ren.class.php");
    f.require_once "ren.class.php";

  • 相关阅读:
    javap,是 java printer 的缩写,是 JDK 自带的 Java 字节码分析工具
    这段代码的返回值在出现异常和不出现异常的情况下,分别应该是多少?
    strictfp 关键字修饰方法,即 strict float point (精确浮点)
    transient 修饰符修饰属性:不需要序列化的属性
    Java 中的 CAS 操作
    ReentrantLock 与 synchronized 的比较
    线程安全的实现方法:互斥同步、非阻塞同步、无同步方案
    J.U.C包的意义
    synchronized 原理
    什么场景下,使用 final、volatile、Atomic原子类、synchronized、J.U.C 包中的锁?
  • 原文地址:https://www.cnblogs.com/xcc2016/p/5562138.html
Copyright © 2011-2022 走看看