php面向对象之构造函数作用与方法

php面向对象之构造函数作用与方法

什么是构造函数呢?构造函数又有什么作用呢?

 

构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。

可能上面的描述大家还是不能很清楚的了解,我们就举例子向大家讲解下。

构造函数的用法实例

我们先创建一个类,并且初始化这个类。

1
2
3
4
5
6
7
8
9
10
11
class 
Preson{
public 
$name
;                     
//定义变量
public 
$age
;
public 
$sex
;
public 
$height
;
}
$Preson1 

new 
Preson();
$Preson1
->
$name 

"大白"
;        
//变量赋值
$Preson1
->
$age 
= 20;
$Preson1
->
$sex 

"女"
;
$Preson1
->
$height 
= 180;

可以看到,上述例子中赋值过程比较繁琐,如果变量很多的话,工作量将会非常大,很麻烦。所以,我们引入了构造方法。所以构造函数的作用就是用来初始化对象的。该方法可以没有参数,也可以有多个参数。定义构造函数也很简单,__construct(),值得注意的是函数construct前面是两个下划线”_”.

了解了构造函数之后,我们用构造函数来重写上面的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class 
Preson{
public 
$name
;                     
//定义变量
public 
$age
;
public 
$sex
;
public 
$height
;
function 
__construct(
$name
,
$age
,
$sex
,
$height
){
$this
->name = 
$name
;         
//为变量赋值
$this
->age = 
$age
;
$this
->sex = 
$sex
;
$this
->height = 
$height
;
}
public 
function 
PlayBaskteBall(){
if
(
$this
->height>175 || 
$this
->age < 22){
return    
$this
->name . 
"可以打篮球"
;
}
else
{
return 
$this
->name . 
"不具备打球的条件"
;
}
}
}
$Preson1 

new 
Preson(
"大白"
,
"20"
,
"女"
,
"180"
);
echo 
$
$Preson1
->PlayBaskteBall();

构造方法是初始化对象时使用的,如果没有构造方法,那么PHP会自动生成一个。自动生成的构造方法没有任何参数,没有任何操作。

以上就是php面向对象之构造函数作用与方法的详细内容,更多请关注php中文网其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112362.html原文链接:https://javaforall.net

(0)
上一篇 2021年11月9日 上午8:00
下一篇 2021年11月9日 上午9:00


相关推荐

  • 手机cpu控制免root_cpu利用率低但是卡

    手机cpu控制免root_cpu利用率低但是卡想不想让CPU利用率展示成一首优美的旋律,就像弹琴一样。我的意思是,你想让系统以及task的CPU利用率是多少它就是多少,一切都是由你的程序自己来调制演奏。这需要一种自指机制。哈哈,完全可以,本文来演示,或者说,你可以把本文的内容看作一个戏弄运维人员的恶作剧。运维人员经常会遇到各种CPU高的问题,然后成群结队地去排查,想让队伍更大些吗?想让事情更诡异吗?我让你查,我让你查。哈哈。事先声明,若用本文描述的手段实施恶意行为,将会受到谴责,这并不是一个真正工程师该有的行为,更有辱手艺人的探索精神。

    2025年8月24日
    5
  • vmware16安装centos8_虚拟机centos6安装教程

    vmware16安装centos8_虚拟机centos6安装教程VMware12安装centOS8(vm虚拟机安装centos8教程)前几天Centos8发布了,尽管他是8的第一个版本,有着许多的bug那么今天我们就在VM12上面安装centOS8吧,8这个图形化界面我个人感觉有点丑首先下载iso文件百度下点击进入官网点击马上获得centos然后选择这个选择离你近的镜像地址,点击下载打开vm12点击新建虚拟机点击下一步,如下图这样…

    2022年10月1日
    5
  • RUST开服教程、常用指令及心得[通俗易懂]

    RUST开服教程、常用指令及心得[通俗易懂]【前言】【开始前你需要了解的事情】①常用网址②更新与删档日期③目前国服环境【服务器硬件的选择】【标准服务器】①下载和更新服务器②制作服务器的启动脚本③选择你的服务器地图④运行服务器【模组服务器】①完成标准服务器的下载和设置②安装Oxide插件平台③下载插件④安装插件⑤调试插件⑥模组服的更新⑦在标准服中使用插件功能【在自己的电脑上运行服务端】①…

    2022年7月14日
    77
  • BigDecimal加减乘除运算

    BigDecimal加减乘除运算java.math.BigDecimal。BigDecimal一共有4个够造方法,让我先来看看其中的两种用法:第一种:BigDecimal(doubleval)TranslatesadoubleintoaBigDecimal.第二种:BigDecimal(Stringval)TranslatestheStringrepresentationofaBig

    2022年5月2日
    47
  • md5加密规则[通俗易懂]

    md5加密规则[通俗易懂]关于MD5加密  MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。比如,在UNIX下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:  MD5(tanajiya.tar.gz)=0ca175b9c0f726a831d895e269332461  这就是

    2022年7月16日
    19
  • 智谱发布 GLM-ASR(闭源)与开源 1.5B GLM-ASR-Nano-2512:针对中文与方言场景的语音识别尝试

    智谱发布 GLM-ASR(闭源)与开源 1.5B GLM-ASR-Nano-2512:针对中文与方言场景的语音识别尝试

    2026年3月12日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号