zoukankan      html  css  js  c++  java
  • 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中文网其它相关文章!

  • 相关阅读:
    在Ubuntu中通过update-alternatives切换软件版本
    SCons: 替代 make 和 makefile 及 javac 的极好用的c、c++、java 构建工具
    mongodb 的使用
    利用grub从ubuntu找回windows启动项
    How to Repair GRUB2 When Ubuntu Won’t Boot
    Redis vs Mongo vs mysql
    java script 的工具
    python 的弹框
    how to use greendao in android studio
    python yield的终极解释
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15453406.html
Copyright © 2011-2022 走看看