找回密码
 立即注册
搜索
查看: 1811|回复: 0

[面向对象] php面向对象访问类型的控制| public、private、protected

[复制链接]

581

主题

110

回帖

4066

积分

管理员

积分
4066

众神之神

发表于 2016-1-11 12:55:54 | 显示全部楼层 |阅读模式
代码示例:
  1. <?php

  2. class person{
  3.     public $name;
  4.     private $age;
  5.     protected $sex;

  6.     public function __construct($name,$age,$sex){
  7.         $this -> name = $name;
  8.         $this -> age = $age;
  9.         $this -> sex = $sex;
  10.     }

  11.     public function p1(){
  12.         echo "p1";
  13.     }

  14.     private function p2(){
  15.         echo "p2";
  16.     }

  17.     protected function p3(){
  18.         echo "p3";
  19.     }

  20.     public function test1(){
  21.         //echo $this -> name;               //公有的成员属性在类的内部可以访问   
  22.         //echo $this -> age;                //私有的成员属性在类的内部可以访问
  23.         //echo $this -> sex;                //受保护的成员属性在类的内部可以访问
  24.         //$this -> p1();                    //公有的成员方法在类的内部可以访问
  25.         //$this -> p2();                    //私有的成员方法在类的内部可以访问
  26.         //$this -> p3();                    //受保护的成员方法在类的内部可以访问
  27.     }
  28. }

  29. class student extends person{

  30.     public function test(){
  31.         // echo $this -> name;          //公有的成员属性在子类中可以访问
  32.         //echo $this -> age;            //私有的成员属性在子类中不可以访问           
  33.         //echo $this -> sex;            //受保护的成员属性在子类中可以访问
  34.         //$this -> p1();                //公有的成员方法在子类中可以访问
  35.         //$this -> p2();                //私有的成员方法在子类中不可以访问
  36.         //$this -> p3();                //受保护的成员方法在了类中可以访问
  37.     }
  38. }


  39. $person = new person("zhangsan",18,"nan");
  40. //echo $person -> name;         //公有的成员属性在类的外部可以访问
  41. //echo $person -> age;          //私有的成员属性在类的外部不可以直接访问
  42. //echo $person -> sex;          //受保护的成员属性在类的外部不可以直接访问
  43. //$person -> p1();              //公有的成员方法在类的外部可以访问
  44. //$person -> p2();              //私的有成员方法在类的外部不可以直接访问
  45. //$person -> p3();              //受保护的成员方法在类的外部不可以直接访问
  46. //
  47. //$student = new student("lisi",20,"nv");
  48. //$student -> test();
  49. //
  50. $person -> test1();
复制代码


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|十三博客 ( 鲁ICP备2023000528号 )

GMT+8, 2026-6-1 17:29 , Processed in 0.052784 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表