php 的public作用
阿神
阿神 2016-11-09 16:50:14
0
2
1246
<?php 
class ren{
public $xingming;//定义一个成员变量 这里是否保存成员方法里的变量值 
public $shengao;//定义一个成员变量
public $tizhong;//定义一个成员变量
public function boot($name,$sg,$tz){//声明成员变量 利用public声明function boot($name,$sg,$tz)作用是什么
$this->xingming=$name;
$this->shengao=$sg;
$this->tizhong=$tz;
if($this->shengao<185 && $this->tizhong<85){
echo $this->xingming."符合要求 可以通过"; //方法实现的功能
}else{
echo $this->xingming."不符合要求 不可以通过";//方法实现实现的功能
}
}
}
$sport=new ren(); //实例化类并传递参数
echo $sport->boot("李亚","165","51");//执行类中的方法
?>

我个人的思路是 利用$this调用成员变量 调用过然后再把成员方法赋给$this调用成变量里 然后再利用 public它来保存 把成员方法赋给成员变量里的值 我不知道我的思路可是对了 求高手指教谢谢

阿神
阿神

闭关修行中......

Antworte allen(2)
phpcn_u33

类的修饰词
表示公开的类,可以继承可以访问

阿神

从PHP5.0版本开始,对象声明时需要声明对象属性和方法的可见性,public关键字表示属性或方法是公开可见的。

在PHP5.0之前未支持对象属性和方法的可见性定义,默认所有的属性和方法都是公开可见的,如以下的对象声明:

//例1
class Obj {
    var $name = 'Obj';
    function getName() {
        return $this->name;
    }
}

而PHP5开始推荐写法为:

//例2
class Obj {
    protected $name = 'Obj';
    public function getName() {
        return $this->name;
    }
}

对于例1来说,实际上可以直接访问name属性,从而绕过getName方法,如

$obj = new Obj(); 
echo $obj->name;

而对于例2来说,由于$name属性是protected(受保护的),因此必须使用getName方法才能得到$name属性的值。

同时这也是面向对象语言通用的一种声明方式。

public: 公开可见

protected: 对象内部可见 (该对象的子对象同样可以访问)

private: 对象自身内部可见 (不包含该对象的子对象,或者说private属性和方法不会被继承)


Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage