제임스
203cm
120kg
열
6
Destructor
출력:
NbaPlayer 생성자
드리블
패스<?php date_default_timezone_set("PRC"); //类的定义以关键字class开始,后面跟着这个类的名称。类的命名通常每个单词的第一个字母大写。以中括号开始和结束 //定义NbaPlayer类 class NbaPlayer{ //定义属性 public $name="Jordan"; public $height="198cm"; public $weight="98kg"; public $team="Bull"; public $playerNumber="23"; //构造函数,在<strong>对象</strong>被实例化的时候自动调用 function __construct($name,$height,$weight,$team,$playerNumber){ //没有被明确调用,但是也被调用了 echo "In NbaPlayer Constructor\n"; $this->name=$name; //$this是PHP里的伪变量,表示<strong>对象</strong>自身。可以通过$this->的方法访问<strong>对象</strong>的属性和方法 $this->height=$height; $this->weight=$weight; $this->team=$team; $this->playerNumber=$playerNumber; } //析构函数,在程序执行结束的时候会自动调用 //析构函数通常被用于清理程序使用的资源,比如程序使用了打印机,那么可以在析构函数里面释放打印机资源。 function __destruct(){ echo "Destroying ".$this->name."<br/>"; } //定义方法 public function run(){ echo "Running\n"; } public function jump(){ echo "Jumping\n"; } public function dribble(){ echo "Dribbling\n"; } public function shoot(){ echo "Shooting\n"; } public function dunk(){ echo "Dunking\n"; } public function pass(){ echo "Passing\n"; } } //类到<strong>对象</strong>的实例化 //类的实例化为<strong>对象</strong>时使用关键字new,new之后紧跟这类的名称和一对括号 $jordan = new NbaPlayer("Jordan","198cm","98kg","Bull","23"); //<strong>对象</strong>中的属性成员可以通过->符号来访问 echo $jordan->name."\n"; //<strong>对象</strong>中的成员方法可以通过->符号来访问 $jordan->dribble(); $jordan->pass(); //每一次用new实例化<strong>对象</strong>的时候,都会用类名后面的参数列比调用构造函数 $james= new NbaPlayer("James","203cm","120kg","Heat","6"); echo $james->name; //通过把变量设置为null,可以触发析构函数的调用 $james=null; echo "From now on James will not be used. <br/>"; ?>NbaPlayer Constructor에서
제임스는 객체입니다.
$james는 <?php
date_default_timezone_set("PRC");
//类的定义以关键字class开始,后面跟着这个类的名称。类的命名通常每个单词的第一个字母大写。以中括号开始和结束
//定义NbaPlayer类
class NbaPlayer{
//定义属性
public $name="Jordan";
public $height="198cm";
public $weight="98kg";
public $team="Bull";
public $playerNumber="23";
//构造函数,在<strong>对象</strong>被实例化的时候自动调用
function __construct($name,$height,$weight,$team,$playerNumber){ //没有被明确调用,但是也被调用了
echo "In NbaPlayer Constructor\n";
$this->name=$name; //$this是PHP里的伪变量,表示<strong>对象</strong>自身。可以通过$this->的方法访问<strong>对象</strong>的属性和方法
$this->height=$height;
$this->weight=$weight;
$this->team=$team;
$this->playerNumber=$playerNumber;
}
//析构函数,在程序执行结束的时候会自动调用
//析构函数通常被用于清理程序使用的资源,比如程序使用了打印机,那么可以在析构函数里面释放打印机资源。
function __destruct(){
echo "Destroying ".$this->name."<br/>";
}
//定义方法
public function run(){
echo "Running\n";
}
public function jump(){
echo "Jumping\n";
}
public function dribble(){
echo "Dribbling\n";
}
public function shoot(){
echo "Shooting\n";
}
public function dunk(){
echo "Dunking\n";
}
public function pass(){
echo "Passing\n";
}
}
//类到<strong>对象</strong>的实例化
//类的实例化为<strong>对象</strong>时使用关键字new,new之后紧跟这类的名称和一对括号
$jordan = new NbaPlayer("Jordan","198cm","98kg","Bull","23");
//<strong>对象</strong>中的属性成员可以通过->符号来访问
echo $jordan->name."\n";
//<strong>对象</strong>中的成员方法可以通过->符号来访问
$jordan->dribble();
$jordan->pass();
//每一次用new实例化<strong>对象</strong>的时候,都会用类名后面的参数列比调用构造函数
$james= new NbaPlayer("James","203cm","120kg","Heat","6");
echo $james->name;
//通过把变量设置为null,可以触发析构函数的调用
//当<strong>对象</strong>不会再被使用的时候,会触发析构函数
//james1也是指向new NbaPlayer();
$james1=$james;
$james=null;
echo "From now on James will not be used. <br/>";
?>James<br>이제부터 James는 사용하지 마세요.<br>Destroying James<br>Destroying Jordan<br>예 2:<br><br><br>출력:<br>NbaPlayer Constructor에서<br>Jordan<br>드리블<br>패스</p>
<pre name="code"><?php
date_default_timezone_set("PRC");
//类的定义以关键字class开始,后面跟着这个类的名称。类的命名通常每个单词的第一个字母大写。以中括号开始和结束
//定义NbaPlayer类
class NbaPlayer{
//定义属性
public $name="Jordan";
public $height="198cm";
public $weight="98kg";
public $team="Bull";
public $playerNumber="23";
//构造函数,在<strong>对象</strong>被实例化的时候自动调用
function __construct($name,$height,$weight,$team,$playerNumber){ //没有被明确调用,但是也被调用了
echo "In NbaPlayer Constructor\n";
$this->name=$name; //$this是PHP里的伪变量,表示<strong>对象</strong>自身。可以通过$this->的方法访问<strong>对象</strong>的属性和方法
$this->height=$height;
$this->weight=$weight;
$this->team=$team;
$this->playerNumber=$playerNumber;
}
//析构函数,在程序执行结束的时候会自动调用
//析构函数通常被用于清理程序使用的资源,比如程序使用了打印机,那么可以在析构函数里面释放打印机资源。
function __destruct(){
echo "Destroying ".$this->name."<br/>";
}
//定义方法
public function run(){
echo "Running\n";
}
public function jump(){
echo "Jumping\n";
}
public function dribble(){
echo "Dribbling\n";
}
public function shoot(){
echo "Shooting\n";
}
public function dunk(){
echo "Dunking\n";
}
public function pass(){
echo "Passing\n";
}
}
//类到<strong>对象</strong>的实例化
//类的实例化为<strong>对象</strong>时使用关键字new,new之后紧跟这类的名称和一对括号
$jordan = new NbaPlayer("Jordan","198cm","98kg","Bull","23");
//<strong>对象</strong>中的属性成员可以通过->符号来访问
echo $jordan->name."\n";
//<strong>对象</strong>中的成员方法可以通过->符号来访问
$jordan->dribble();
$jordan->pass();
//每一次用new实例化<strong>对象</strong>的时候,都会用类名后面的参数列比调用构造函数
$james= new NbaPlayer("James","203cm","120kg","Heat","6");
echo $james->name;
//通过把变量设置为null,可以触发析构函数的调用
//当<strong>对象</strong>不会再被使用的时候,会触发析构函数
//james1也是指向new NbaPlayer();
$james1=$james; //$james1直接指向詹姆斯
$james2=&james; //$james2相当于$james的影子,指向$james, $james再指向詹姆斯
$james=null; //不需要再次设置$james2=null,因为他俩的效果是一样的
$james1=null; //任何一个赋值为null相当于删除了一个<strong>对象</strong>的引用
echo "From now on James will not be used. <br/>";
?>NbaPlayer 생성자에서
James
Destroying James
이제부터 James는 사용되지 않습니다.
Destroying Jordan
위 내용은 PHP 객체지향 프로그래밍 - 기본 실습 DAY 2의 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.