最近开始重新学习对象知识,其实也算是初步深入学习对象和设计模式,希望自己会坚持下去,保持更新

初识PHP对象

还记得,刚开始学习 PHP 的时候,学到到方法和对象时有一个很大的疑问,对象与方法相比较那么麻烦(需要设置属性,给属性赋值,实例化类,调用)为什么还要用对象呢?随着逐步的深入才发现,自己之前的想法是有多可笑,下面给一个简单的示例。

  1. function get_max($val_1, $val_2)
  2. {
  3. return $val_1 > $val_2 ? $val_1 : $val_2;
  4. }
  5. $max = get_max(23,34);
  6. echo $max;
  7. echo '<br>======================这是华丽的分隔符======================<br>';
  8. // 类
  9. class Test
  10. {
  11. // 属性
  12. public $val_1;
  13. public $val_2;
  14. // 类的方法
  15. public function __construct($val_1, $val_2)
  16. {
  17. $this->val_1 = $val_1;
  18. $this->val_2 = $val_2;
  19. }
  20. public function get_max()
  21. {
  22. return $this->val_1 > $this->val_2 ? $this->val_1 : $this->val_2;
  23. }
  24. }
  25. // 实例化类,$test 是由类 Test 生成的对象
  26. $test = new Test(83, 34);
  27. echo $test->get_max();

可以看到使用对象比单纯的方法多了很多代码,但是为什么还要使用对象呢,我们下一节详细介绍,别走开,往下看

为什么使用对象

什么是对象?什么是类?很多人会把两个搞混淆,我们可以把类看做一个工厂,产出的产品就是对象,也就是对象是类的实现。

一个类通常包含属性、方法。举个

PHP 对象基础知识的更多相关文章

  1. OpenGL ES 3.0 帧缓冲区对象基础知识

    最近在帧缓冲区对象这里卡了一下,不过前面已经了解了相关的OpenGL ES的知识,现在再去了解就感觉轻松多了.现在就进行总结. 基础知识 我们知道,在应用程序调用任何的OpenGL ES命令之前,需要 ...

  2. JavaScript对象基础知识总结

    1.什么叫JavaScript对象? 定义:名值对的集合.简单的讲就是容纳属性值和属性值的容器,这些属性可以是无序的,基本上JavaScript中所有的事物都可以看成对象. 拓展:我们经常说,数组也是 ...

  3. JAVA 类和对象基础知识详解

    /*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 1978702969@qq.com*/ 和C++一样,JAVA也是一门面向对象的语言,其基础和核心是类和对象.而面向对象的思想是来源与显示生 ...

  4. JavaScript对象基础知识

    1.对象所包含的元素一组包含数据的属性.如人的名字.书的价格和手机型号等.允许对属性中所包含的数据进行操作的方法. 2.引用对象的途径一个对象真正地被使用,可以采用以下几种方式.引用Javascrip ...

  5. php新建数据库对象 基础知识

    数据访问 结合html 数据库 PHP面向对象的方式函数的方式 1建立通道 MySQLi 类通过构造函数造出 连接数据库地址 uesername 连接用户名 passwd dbname port so ...

  6. 深入理解python(一)python语法总结:基础知识和对python中对象的理解

    用python也用了两年了,趁这次疫情想好好整理下. 大概想法是先对python一些知识点进行总结,之后就是根据python内核源码来对python的实现方式进行学习,不会阅读整个源码,,,但是应该会 ...

  7. Python基础知识详解 从入门到精通(七)类与对象

    本篇主要是介绍python,内容可先看目录其他基础知识详解,欢迎查看本人的其他文章Python基础知识详解 从入门到精通(一)介绍Python基础知识详解 从入门到精通(二)基础Python基础知识详 ...

  8. 第4章 基础知识进阶 第4.1节 Python基础概念之迭代、可迭代对象、迭代器

    第四章 基础知识进阶第十七节 迭代.可迭代对象.迭代器 一.    引言 本来计划讲完元组和字典后就讲列表解析和字典解析,但要理解列表解析和字典解析,就需要掌握Python的高级的类型迭代器,因此本节 ...

  9. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

随机推荐

  1. php安装错误 (node.c:1953:error) 解决办法

    CentOs安装PHP在make时报错: root@---- [/opt/php-5.2.17]# make /bin/sh /opt/php-5.2.17/libtool --silent --pr ...

  2. WCF SecurityElement

    1.SslStreamSecurityElement <sslStreamSecurity requireClientCertificate="true"/> Requ ...

  3. OC与JS交互前言

    OC与JS交互过程中,可能会需要使用本地image资源及html,css,js文件,这些资源应该如何被加载? 一.WebView加载HTML UIWebView提供了三个方法来加载html资源 1.  ...

  4. Windows、Unix、Mac不同操作系统的换行问题-剖析回车符\r和换行符\n

    转载链接:http://blog.csdn.net/tskyfree/article/details/8121951 一.概念: 换行符‘\n’和回车符‘\r’ (1)换行符就是另起一行  --- ' ...

  5. ajax实现异步请求的过程

    var xhr;        xhr = new XMLHttpRequest(); //创建一个异步对象        xhr.open("Get", "test.a ...

  6. oracle 清空数据库缓存

    oracle 清除数据库缓存: alter system flush shared_pool ; alter system flush BUFFER_CACHE ;

  7. php 02

    变量的数据类型 一.类型 标量类型: 布尔型 整型 浮点型 字符串 复合类型:  数组  对象 特殊类型:  资源 null 1. 布尔型 true  false 以下值认为是false  其他值都认 ...

  8. Android 应用开机自启和无需权限开启悬浮框

    开机自启主要自定义广播接收类,且需要在清单文件中注册,不要在代码中动态注册. <uses-permission android:name="android.permission.REC ...

  9. 【Quartus警告】created implicit net for XXX.

    [警告内容]Warning (10236): Verilog HDL Implicit Net warning at forward_replace.v(16): created implicit n ...

  10. Navicat for Oracle设置唯一性和递增序列

    [数据库] Navicat for Oracle基本用法图文介绍 一. 设置唯一性 参考文章:Oracle之唯一性约束(UNIQUE Constraint)用法详解唯一性约束英文是Unique Con ...