>  기사  >  백엔드 개발  >  php5 클래스의 세 가지 데이터 유형 간의 차이점

php5 클래스의 세 가지 데이터 유형 간의 차이점

WBOY
WBOY원래의
2016-07-25 09:11:05952검색
  1. /**

  2. * parent 只能调用父类中的公有或受保护的方法,不能调用父类中的属性
  3. * self  可以调用父类中除私有类型的方法和属性外的所有数据
  4. */
  5. class User{
  6. public $name;
  7. private $passwd;
  8. protected $email;
  9. public function __construct(){
  10. //print __CLASS__." ";
  11. $this->name= 'simple';
  12. $this->passwd='123456';
  13. $this->email = 'test123@163.com';
  14. }
  15. public function show(){
  16. print "good ";
  17. }
  18. public function inUserClassPublic() {
  19. print __CLASS__.'::'.__FUNCTION__." ";
  20. }
  21. protected function inUserClassProtected(){
  22. print __CLASS__.'::'.__FUNCTION__." ";
  23. }
  24. private function inUserClassPrivate(){
  25. print __CLASS__.'::'.__FUNCTION__." ";
  26. }
  27. }

  28. class simpleUser extends User {

  29. public function __construct(){
  30. //print __CLASS__." ";
  31. parent::__construct();
  32. }
  33. public function show(){
  34. print $this->name."//public ";
  35. print $this->passwd."//private ";
  36. print $this->email."//protected ";
  37. }
  38. public function inSimpleUserClassPublic() {
  39. print __CLASS__.'::'.__FUNCTION__." ";
  40. }
  41. protected function inSimpleUserClassProtected(){
  42. print __CLASS__.'::'.__FUNCTION__." ";
  43. }
  44. private function inSimpleUserClassPrivate() {
  45. print __CLASS__.'::'.__FUNCTION__." ";
  46. }
  47. }

  48. class adminUser extends simpleUser {

  49. protected $admin_user;
  50. public function __construct(){
  51. //print __CLASS__." ";
  52. parent::__construct();
  53. }
  54. public function inAdminUserClassPublic(){
  55. print __CLASS__.'::'.__FUNCTION__." ";
  56. }
  57. protected function inAdminUserClassProtected(){
  58. print __CLASS__.'::'.__FUNCTION__." ";
  59. }
  60. private function inAdminUserClassPrivate(){
  61. print __CLASS__.'::'.__FUNCTION__." ";
  62. }
  63. }

  64. class administrator extends adminUser {

  65. public function __construct(){
  66. parent::__construct();
  67. }
  68. }

  69. /**

  70. * 在类的实例中 只有公有属性和方法才可以通过实例化来调用
  71. */
  72. $s = new administrator();
  73. print '-------------------';
  74. $s->show();
  75. ?>

复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.