时间:2021-07-01 10:21:17 帮助过:29人阅读
/**
* 继承,访问控制,static(静态)关键字、重写、Final关键字、数据访问补充、接口、多态、抽象类
*//**
* 1.静态属性用于保存类的公有数据
* 2.静态方法里面只能访问静态属性
* 3.静态成员不需要实例化对象就可以访问
* 4.类的内部可以通过self或者static关键字访问自身静态变量
* 5.可以通过parent关键字访问父类的静态成员
* 6.可以通过类的名称在类的定义外部访问静态成员
*/
header("Content-Type: text/html; charset=utf-8");//去除中文乱码
date_default_timezone_set("PRC");//设置中国时区/**
* Human类定义
*/classHuman {public$name;
protected$height;//本身和子类可访问public$weight;
publicstatic$staticValue="我是Human类里的static成员。";
publicfunctioneat($food){echo$this->name." is eating ".$food."
";
}
}
/**
* NbaPlayer类定义
*/classNbaPlayerextendsHuman{//extends:表示继承,php中extends只能跟一个类的类名(单继承原则)//属性public$team="PTS";
public$playerNum="1221";
private$age= 12;
//静态属性定义publicstatic$president="David";
//静态方法定义publicstaticfunctionchangePresident($newPresident){static::$president=$newPresident;
//self::$president=$newPresident;//在类定义中使用静态成员,用static或self::静态成员变量//使用parent关键字访问父类的静态成员echoparent::$staticValue."
";
}
//构造函数function__construct($name,$weight,$team,$playerNum){echo"执行构造函数...
";
$this->name=$name;//this是php里面的伪变量,自身$this->weight=$weight;
$this->team=$team;
$this->playerNum=$playerNum;
}
//析构函数function__destruct(){echo"执行析构函数...
";;
}
//定义方法publicfunctionrun(){echo"Runing...\n";
}
publicfunctionjump(){echo"Jumping...\n";
}
publicfunctiondribble(){echo"Dribbling...\n";
}
publicfunctionshoot(){echo"Shooting...\n";
}
publicfunctiondunk(){echo"Dunking...\n";
}
publicfunctionpass(){echo"Passing...\n";
}
publicfunctiongetAge(){echo$this->name."今年 ".$this->age." 岁了。
";
}
}
//类的实例化$pzy=new NbaPlayer("彭中耀","182cm","75kg","PTS","1221");
$pts=new NbaPlayer("彭小耀","128cm","15kg","PTS","1221");
echo$pzy->name."\n";
echo$pzy->eat("大西瓜");
//echo $pzy->age;$pzy->getAge();
// echo $pzy->name."的联盟总裁是".$pzy->president;//x不能访问静态成员// echo $pts->name."的联盟总裁是".$pts->president;//类定义外访问静态成员:类名::静态成员变量echo"前任是".NbaPlayer::$president."
";
NbaPlayer::changePresident("彭大耀");
echo"现任是".NbaPlayer::$president."
";
?>
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了面向对象PHP(一),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。