克隆
class Ren
{
public $name;
public $sex;
function __construct($n,$s)
{
$this->name=$n;
$this->sex=$s;
}
function __clone()//改变克隆的对象内容
{
$this->name="李思思";//this代表复本对象
$that->name="李思思";//that代表原本的,后来废弃了
}
}
$r=new Ren("张丹","女");
//克隆,用处不很大,完全可以new一个新的
$r1=clone $r;
var_dump($r);
var_dump($r1);

//引用类,加载类
class Ren
{
public $name;
public $sex;
public function Say()
{

}
}

//关于根路径:php里面 / 代表根路径;值该文件所在的磁盘,煮个栗子:D:/
//html里面 / 代表根路径:指服务器文件夹
include("Ren.class.php");//相对路径 "/"根路径

require"Ren.class.php";
require_once("Ren.class.php");

//自动加载类
//1.所有的类文件命名要求有同一个规则
//2.文件名里面必须有类名
//3。所有类文件必须在同一个文件夹下
function __autolode($classname)
{
require $classname.".class.php";
}
$r=new Ren();
echo $r->name;

//面向对象大串讲

//类和对象
//对象:一切东西都可以看做对象,对象是类的实例化。
//类:类是对象的抽象,用来描述众多对象共有的特征。

//定义类 class
//成员变量 和 成员方法
//访问修饰符 public共有的 private 私有的 protected 受保护的
//面向对象三大特性:
//1.封装:目的:保护类,做法:成员私有,方法访问。__get() __set()
//构造方法:特殊点:1.写法特殊 2.执行时间特殊;可以实现成员的初始化
//$this关键字:$this代表该对象

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

//3.多态:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,所以父类引用在调用该方法的时候表现出的不同就成为多态。
//条件:1.必须继承 2.子类必须对父类方法重写 3.父类引用指向子类实例

//静态
//关键字:static
//普通成员是属于对象的
//静态成员是属于类的
//普通方法里面可以调用静态成员
//静态方法里面不能调用普通成员
//用类名调用:Ren::Say();
//self关键字:代表该类本身

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

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

//析构函数
//写法特殊 执行特殊:在对象销毁的时候执行

//__tostring()方法

//克隆 关键字:clone

//加载类 7种

//函数重载
//要求:1.要么参数数量不同,要么参数类型不同。2.方法名必须相同

//函数重载:强类型语言,php里面没有
//要求:1.要么参数数量不同,要么参数类型不同 2.方法名必须相同

0607pm克隆&引用类&加载类&面向对象串讲&函数重载的更多相关文章

  1. php部分---面向对象静态、抽象类、oop接口、加载类、魔术方法、关键字。

    静态  static关键字 普通成员普通成员是属于对象的 静态成员静态成员是属于类的 普通方法里面可以调用静态成员静态方法里面不能调用普通成员self关键字 在类里面代表该类 普通类class Ren ...

  2. 【PHP面向对象(OOP)编程入门教程】23.自动加载类 __autoload()函数

    很多开发者写面向对象的应用程序时,对每个类的定义建立一个 PHP 源文件.一个很大的烦恼是不得不在每个脚本(每个类一个文件)开头写一个长长的包含文件的列表. 在软件开发的系统中,不可能把所有的类都写在 ...

  3. 10月27日PHP加载类、设计模式(单例模式和工厂模式)、面向对象的六大原则

    加载类可以使用include.require.require_once三种中的任意一种,每个关键字都有两种方法,但是这种方法的缺点是需要加载多少个php文件,就要写多少个加载类的方法.一般也就需要加载 ...

  4. PHP 进阶篇:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 (麦子学员 第三阶段)

    以下是进阶篇的内容:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 ================================== ...

  5. php面向对象加载类、常用设计模式

    加载类: include("./Ren.class.php"); include "./Ren.class.php"; 用此方法的时候include后面要加空格 ...

  6. PHP面向对象深入研究之【命名空间】与【自动加载类】

    命名空间 避免类名重复,而产生错误. <?php require_once "useful/Outputter.php"; class Outputter { // outp ...

  7. php面向对象加载类

    php加载类: 新建php文件用驼峰法命名类名: 每个单词首字母大写,后面加.class.php表示这是php类文件.例如: ClubMember.class.php 若为纯php页面,<?ph ...

  8. php之类,对象(四)加载类及练习题

    一.加载类:1.命名类文件的时候每个单词首字母大写,后面缀上.class.php eg: Info.class.php 在写编码时定义类名首字母大写,定义变量名小写 eg:class Ren { pu ...

  9. PHP命名空间与自动加载类详解

    本文实例讲述了PHP命名空间与自动加载类.分享给大家供大家参考,具体如下: 今天我要给大家介绍的是PHP的命名空间 和 自动加载类 我先简单的分开演示 在放在一起 大家请看:什么是自动加载类? 想必大 ...

随机推荐

  1. PHP中插件机制的一种实现方案

    这篇文章的出发点是我对插件机制的理解,及其在PHP中的实现.此方案仅是插件机制在PHP中的实现方案之一,写下来和大家分享,欢迎大家一起讨论. 插件,亦即Plug-in,是指一类特定的功能模块(通常由第 ...

  2. WebMethod Session

    [WebMethod(EnableSession = true)] public static string SayHello() { LxUserContext depno = HttpContex ...

  3. java string 首字母大小写方法

    String字符串需要进行首字母大小写改写,查询google,就是将首字母截取,转化大小写 + 首字母后面字符串 //首字母小写 public static String captureName(St ...

  4. 《数据结构(C#语言描述)》

    本文转载自abatei,数据结构学了很多次,但是只是知道硬性的概念,现在专攻C#语言,对编程语言也有了更深的认识, 买一本C#的数据结构来看看,再一次加深对数据结构的学习,真是一件让人高兴的事. 当当 ...

  5. python学习【第四篇】python函数 (一)

    一.函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以 ...

  6. 【BZOJ1812】[Ioi2005]riv 树形DP

    [BZOJ1812][Ioi2005]riv Description 几乎整个Byteland王国都被森林和河流所覆盖.小点的河汇聚到一起,形成了稍大点的河.就这样,所有的河水都汇聚并流进了一条大河, ...

  7. On the fly test

    on the fly test就是边开发边测试的意思.test code不是早就生成好的,在一边生成code的同时一边做test running,最大的好处是,flexiable ,每一次可以选择不同 ...

  8. Object-Oriented Metrics: LCOM 内聚性的度量

    Object-Oriented Metrics: LCOM https://www.computing.dcu.ie/~renaat/ca421/LCOM.html Object-Oriented M ...

  9. 【转】 HMC与VIOS对新LPAR提供存储与网络虚拟化的支持

    前面的几篇博文的操作环境都是在IVM下,IVM可以看作是VIOS的一部分,或者是对VIOS功能的一个扩展,一个IVM只能管理1台物理服务器,而HMC则是一对多.在有HMC来管理物理服务器的情形下,VI ...

  10. GDI+绘制图形和画刷填充图形

    GDI+可以再Windows窗体应用程序中以编程方式绘制图形等. 可以在VS里新建项目-Windows窗体应用程序-建一个窗体.首先引入命名空间using System.Drawing.Imaging ...