为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我注释掉了这两行代码这个结果都还没有变?

<?php

class nbaPlayer{

   // public $name;

//public $team;

function __construct($name,$team){

$this->name = $name;

$this->team = $team;

}

public function name(){

echo "球员名:".$this->name."\n";

}

public function team(){

echo "球队名:".$this->team."\n";

}

}

$James = new nbaPlayer('James','Cavaliers');

$James->name();

$James->team();

?>

为什么我把最上面的两个属性注销掉与没注销的结果一致,哪位大神能解释一下这每行代码的意思,感激不尽。

正在回答

1 回答

$James = new nbaPlayer('James','Cavaliers');

初始化一个nbaPlayer类的实例James,并且调用构造函数给James的属性name、team赋值

$James->name();

调用name()函数

$James->team();

调用team()函数

关于注释的两行,我觉得应该是构造函数的时候自动添加了属性。但是我觉得应该把这两句加上,应为属性是有类型的。

另外构造函数最好给属性赋值,这样参数可以变成可选。

为了依然可以不带参数地使用类,所有构造函数的参数应该提供默认值

建议看下官方文档:

http://php.net/manual/zh/oop4.constructor.php



0 回复 有任何疑惑可以回复我~
#1

Meskjei 提问者

非常感谢!
2016-07-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我注释掉了这两行代码这个结果都还没有变?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信