zoukankan      html  css  js  c++  java
  • php面向对象笔记

    1.程序都是要解决真实的业务逻辑!而且现实的业务逻辑,都是动作的主体在发出动作而不是动作独立出现的

    2.语法

    3

    .

    4访问属性: $object->stu_name;

    访问方法:对象->方法名();

    在方法中,访问对象$this

    $this,这个,这个对象。调用该方法的对象!

    $this 就是一个方法内的局部变量!特殊在,方法被对象调用执行时,php会自动确定是哪个对象调用的该方法,会使用该对象为方法内的$this赋值

    5.

    构造方法,__construct()

    在实例化类得到对象时被自动地调用!

    主要承担的工作是初始化对象属性!

    如果没有定义__construct()可以不用执行!

    但是一旦定义了构造方法,那么构造(实例化)的过程,一定要包括这个调用构造方法的过程(构造方法一定会执行)。

    TIP:有时也称,实例化对象为构造对象!

    构造方法可以自动被调用!

    注意

    1, 构造方法可以是一个别的名字

    一个与类名相同的方法,也可能是构造方法!

    1, new class_name时:

    new Student

    new Student();

    取决于是否存在构造函数的必要参数!

    6.

    析构方法,__destruct

    与构造方法相对,表示在对象被销毁时,自动调用的方法!

    对象被销毁,但是对象所占用的资源不一定完全被销毁!

    在对象被销毁时调用,作用是,用于释放对象所占用的额外资源!而不是对象本身!

    注意:

    1对象在什么时候被销毁?

    在用户脚本结束后,所有的资源包括对象都被销毁!

    2保存对象的变量被提前unset

    1, 保存对象的变量,被赋予了一个新的值!

    7

    如果一个方法或者函数参数过多,或者参数不能确定时:会选择使用数组的形式完成处理:

    在构造方法内,先完成对属性的初始化!

    升级:对参数选项增加一个默认值的概念,类似于端口,编码,可以在常规情况下实例化时省略!

    在构造方法内,对属性初始化时,对默认值做处理:

    8

    类的静态成员,static

    静态成员,指的是逻辑上被所有的对象所共享,属于类的成员称之为类的静态成员!

    分成静态属性和静态方法

    保存数据的是静态属性,执行功能的静态方法!

    9

    声明

    额外增加一个 static 关键字!

    属性:

    方法:

    10.

    访问

    ->访问对象成员,静态为类的成员

    因此,应该使用类访问,

    :: 成员!

    ::,静态访问符,类访问符(范围解析操作符)

    在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之如果被引用的变量或者方法没有被声明成const或者static,那么就必须使用操作符->。

    另外,如果从类的内部访问const或者static变量或者方法,那么就必须使用自引用的self,反之如果从类的内部访问不为const或者static变量或者方法,那么就必须使用自引用的$this。

     11.

    类似于$this,同样存在一个self关键字(注意没有$),在类中,代表当前类!

    $this:这个对象, $this->

    self:类自己,self::

    12.

    注意

    1, 访问上,静态成员只能使用::静态访问符号访问!

    典型的,::前应该是类,类内可以使用self

    但是,php支持: 对象::静态成员!

    尽量不要这么写!

    1, 访问上,静态成员使用类访问,而非静态成员使用对象访问。

    但是,问题出现在 方法上!

    测试1,使用类访问,静态与非静态方法:

    测试2,适用对象访问:

    结论:‘无论是静态方法,还是非静态方法,都可以使用类或者对象来访问。那么静态方法与非静态方法的意义在于哪里?

    现象的原因:方法是可执行性代码的集合,针对多个对象都是一致的!

    区别在哪?

    在于$this的使用上!

    只有在使用对象调用非静态方法时,才可以使用$this!

    静态静态方法,无论如何也不能对$this做处理

    而非静态方法,只有确定了对象,才能确定$this的值!

    11,

    类常量,const

    在类内定义,属于类的常量!

    定义

    使用关键字 const声明!

    而且,没有访问修饰限定符。

    12,

    访问

    使用类访问,与访问静态成员类似:

    ::常量名.

    总结

    类中,一共只有5种语法:

    属性,方法,静态属性,静态方法,类常量

  • 相关阅读:
    final .....finally ...... 和Finalize ......区别
    MyEclipse中常用的快捷键大全,快来.....
    简单的描述Java中的构造函数,及访问修饰符
    分层开发---酒店管理系统---
    C#深入.NET平台的软件系统分层开发
    影院售票系统-----一个让你有成就感的小项目,只有一丢丢哦
    mysql数据库进阶
    MySQL练习
    MySQL中常见函数
    TCP协议之三次握手四次挥手
  • 原文地址:https://www.cnblogs.com/zhaoshunjie/p/5814545.html
Copyright © 2011-2022 走看看