构造函数:

在对象实例化时被调用,一个类中只能有一个构造函数,在类中起初始化的作用。

析构函数:

在对象结束时被自动调用。

话不多说,用一段代码来说明两者的区别:

//定义一个类

class Person{

//添加属性;

public $name;

public $age;

public $height;

//创建一个构造函数,起初始化的作用,一个类中只能有一个构造函数

function __construct($name,$age,$height){

$this->name=$name;

$this->age=$age;

$this->height=$height;

}

//创建一个析构函数,在对象结束时自动调用

function __destruct(){

echo "
"."
".$this->name."说,我是析构函数,对象结束时自动调用"."
";

}

//添加一个方法

public function say(){

echo "我叫".$this->name.",我今年".$this->age."了!";

}

}

//创建一个类

$person1=new Person("Alice",18,170);

echo $person1->say();

echo "
";

echo "
";

//创建一个类

$person2=new Person("秦智凯",25,178);

echo $person2->say();

?>

打印结果:

(转载)C++中, 构造函数和析构函数能不能被显示调用?

(转载)http://blog.csdn.net/zhangxinrun/article/details/6056321 代码: view plaincopy to clipboardprint?#i ...

C++学习笔记(7)----类的数组中构造函数和析构函数的调用顺序

C++类的数组中构造函数和析构函数的调用顺序(2) 对于如下的代码: #include using namespace std; class CBase { priva ...

C++C++中构造函数与析构函数的调用顺序

http://blog.csdn.net/xw13106209/article/details/6899370 1.参考文献 参考1: C++继承中构造函数.析构函数调用顺序及虚函数的动态绑定 参考2 ...

C++中构造函数和析构函数的调用顺序

一般而言,析构函数调用的顺序和构造函数调用顺序相反,但是,对象的存储类别可以改变调用析构函数的顺序.举例说明: CreateAndDestroy类的定义 CreateAndDestroy类的成员函数的 ...

C#中构造函数和析构函数的用法

构造函数与析构函数是一个类中看似较为简单的两类函数,但在实际运用过程中总会出现一些意想不到的运行错误.本文将较系统的介绍构造函数与析构函数的原理及在C#中的运用,以及在使用过程中需要注意的若干事项.一 ...

C/C++中构造函数和析构函数能否被继承

http://bbs.csdn.net/topics/390160673 标准方面做了要求的.Even though destructors are not inherited 构造函数和析构函数是不 ...

(转)PHP中构造函数和析构函数解析

--http://www.jb51.net/article/56047.htm 构造函数 void __construct ([ mixed $args [, $... ]] ) PHP 5 允行开发 ...

c++中构造函数 、析构函数的作用域详解

我们知道,在c++中,析构函数是在函数作用域尾部执行析构函数,从而释放对象,但是有一种情况下,析构函数作用域发生变化,请看下面的例子,定义了一个Stock类,Stock类存放在stock.h中,主调用 ...

iOS中构造函数与析构函数

一.构造函数 在OC中凡是已init开头的函数我们都称之为构造函数,在声明构造函数的时候,不带参数的一般直接声明为“-(id)init”,带参数的一般声明为“-(id)initWith...”. 1 ...

C++中构造函数或析构函数定义为private

转自:http://www.blogjava.net/fhtdy2004/archive/2009/05/30/278971.html 很多情况下要求当前的程序中只有一个object.例如一个程序只有 ...

随机推荐

MVC4做网站后台:栏目管理1、添加栏目

把栏目添加删除跟前台混在一起结构清晰,现在有了后台管理的区域就把后台管理相关的代码分开. 要实现功能: 1.添加栏目 2.删除栏目 3.修改栏目信息 -- 一.开始 1.添加 接口InterfaceC ...

[原创]android自定义动画的一点感悟

android提供了一系列的动画处理api,包括animator以及animation等.由于动画效果是根据人眼视觉残留原理形成的,因此动画过程中android需要不断频繁的更新view的相关属性,由 ...

用变量a给出下面的定义

a)一个整型数(An integer)b) 一个指向整型数的指针(A pointer to an integer)  c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to ...

嵌入式程序员应知道的0x10个基本问题

来源:网络 嵌入式程序员应知道的0x10个基本问题 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 ...

Blast使用详解

Blast,全称Basic Local Alignment Search Tool,即"基于局部比对算法的搜索工具",由Altschul等人于1990年发布.Blast能够实现比较 ...

移动端下拉刷新上拉加载-mescroll.js插件

最近无意间看到有这么一个上拉刷新下拉加载的插件 -- mescroll.js,个人感觉挺好用的,官网地址是:http://www.mescroll.com 然后我就看了一下文档,简单的写了一个小dem ...

angular2.0学习笔记6.编程风格指南

1.组件的类名应该是大驼峰形式,并且以Component结尾. 因此英雄详情组件的类名是HeroDetailComponent. 组件的文件名应该是小写中线形式,每个单词之间用中线分隔,并且以.com ...

lemon spj无效编译器解决方法

反正我是被坑了很久,心里增的敲难过呀! 我曾经无数次的想把它解决掉: 啊啊啊啊啊啊! 什么嘛!什么嘛! 这个空白的框框里到底要填什么嘛!!! 你已经是一个成熟的lemon了,就不能自动识别给个选项吗! ...

getElementsByName和getElementById

1: 今天分享工作中遇到的一个小细节 1.1 先介绍一下两个方法分别是: 1.2 getElementById()  :可返回对拥有指定 ID 的第一个对象的引用,如果您需要查找文档中的一个特定的元素 ...

Counting Haybales (线段树)

Counting Haybales 时间限制: 50 Sec  内存限制: 256 MB提交: 52  解决: 18[提交][状态][讨论版] 题目描述 Farmer John is trying t ...

php中的构造函数和析构函数,php 中构造函数和析构函数相关推荐

  1. C++继承中构造函数、析构函数调用顺序及虚析构函数

    首先说说构造函数,大家都知道构造函数里就可以调用成员变量,而继承中子类是把基类的成员变成自己的成员,那么也就是说子类在构造函数里就可以调用基类的成员了,这就说明创建子类的时候必须先调用基类的构造函数, ...

  2. C++中基类与派生类的构造函数和析构函数

    1.Cpp中的基类与派生类的构造函数 基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承.构造函数不能被继承是有道理的,因为即使继承了,它的名字和 ...

  3. 为什么构造函数不能声明为虚函数,析构函数可以,构造函数中为什么不能调用虚函数?

    为什么构造函数不能声明为虚函数,析构函数可以,构造函数中为什么不能调用虚函数 构造函数中为什么不能调用虚函数? 第一个理由是概念上的 第二个理由是机械上的. 构造函数不能声明为虚函数的原因是 1 构造 ...

  4. c++中的继承--2(继承中的析构函数和构造函数,继承中同名成员,继承中静态成员)

    继承中的构造函数和析构函数 继承中的构造和析构顺序 子类创建对象时,先调用父类的构造,然后调用自身构造 析构顺序与构造顺序相反 子类不会继承父类的构造函数和析构函数 如果父类中没有合适默认构造,那么子 ...

  5. C++学习笔记day47-----C++98-继承中的构造函数,析构函数,拷贝构造函数,拷贝赋值函数,多重继承,虚继承

    继承中的构造函数 当通过一个子类创建一个新的对象时,编译器会根据子类在初始化表中指明的基类的初始化方式去调用基类相应的构造函数.如果子类的初始化表中,并没有指明基类的初始化方式,编译器将会调用基类的无 ...

  6. ASP.NET Core中的依赖注入(4): 构造函数的选择与服务生命周期管理

    ServiceProvider最终提供的服务实例都是根据对应的ServiceDescriptor创建的,对于一个具体的ServiceDescriptor对象来说,如果它的ImplementationI ...

  7. 绝不要在构造函数和析构过程中调用virtual函数

    下面是一个用来塑模股市交易的类: derived的类的构造函数被调用,但是首先得调用基类Transaction的构造函数,但是在后面还得调用virrual函数,这个时候子类的对象的构造还没有完成,那么 ...

  8. 面试中常被问到(五)C++析构函数,虚析构函数

    C++析构函数 (1)对于析构函数:析构函数与构造函数相呼应,从调用构造函数开始到自动执行析构函数二者调用期间即为所创建对象实例的生命周期. (2)析构函数与类名相同,仅前面加一个~,一般析构函数无参 ...

  9. C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用?

    C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用? using System; using System.Collections.Generic; using System. ...

最新文章

  1. 怎样查看端口占用情况
  2. 网站优化中需要关注哪些对网站排名有关的内容呢?
  3. excel 进行二叉树_基础扩展 | 21. 遍历二叉树
  4. Java功底之static、final、this、super
  5. sudo修改文件夹名字_修改mac os帐户的短名称和个人文件夹
  6. 使用 BenchmarkDotnet 测试代码性能
  7. 面对焦虑,我们能做什么?
  8. 【数学工具?拉普拉斯机制?随机响应?】差分隐私系统学习记录(二)
  9. java反射机制及使用案例
  10. integer 最大值_JAVA源码之Integer
  11. 常用C/C++预处理指令详解
  12. 舞台音效控制软件_iSurround(电脑音效调节器) V1.0.0.1 官方版
  13. ppt设置外观样式_ppt设置图片样式_PPT如何快速修改图像样式图文教
  14. Ubuntu 自动关机命令
  15. 学习笔记2-面包板的使用
  16. 如何基于TAPD实践Scrum的敏捷开发?
  17. 《千与千寻》告诉产品经理什么?
  18. python运行黑色窗口怎么弄_selenium+python 去除启动的黑色cmd窗口方法
  19. Android高级界面设计
  20. [免费专栏] Android安全之Android so文件分析「详细版」

热门文章

  1. 递归式的时间复杂度的计算
  2. C++实现大数的减法
  3. 知识星球作业(第5周) - 关于view的知识
  4. 兰州办着眼大数据切实提升数据分析管理能力
  5. 代码缺陷导致 CloudFlare 泄露大量客户站点的密码等私密信息
  6. [LeetCode/LintCode] Factorial Trailing Zeros
  7. setPreferredSize和setSize的区别及用法
  8. [技巧]使用Xcode集成的HeaderDoc自动生成注释和开发文档
  9. 华为路由器qos car+nat+dhcp+vlan配置心得
  10. Cannot identify version of git executable: no response