TypechoJoeTheme

Dcr163的博客

统计

PHP面向对象public/protected/private权限控制详解

2015-10-18
/
0 评论
/
1,005 阅读
/
正在检测是否收录...
10/18


/*
private
protected
public
三者的区别

        private        protected        public
本类内      Y                Y               Y    
子类内      N                Y               Y
外部          N                N               Y

注意:
在php中,如果 public/protected/private  都不写,则理解为  public
建议养成好习惯,不要不写
*/
class Human {
    private $money=5000;
    protected $age=25;
    public $name='李四';
    public function aa() {
        echo '我的名字叫',$this->name,'<br />';
        echo '我有',(($this->money)-1500),'元钱<br />';
        echo '我今年',$this->age,'岁了<br />';
    }
}

class Wuman extends Human {
    private $height=168;
    public function bb(){
        echo '我有',$this->money,'元钱<br />';
        echo '我今年',$this->age,'岁了<br />';
        echo '我的名字叫',$this->name,'<br />';
    }
}

$lan=new Wuman();
//echo $lan->name; //李四
//下行错,因为类外部不能调用 private
// echo $lan->height;

//下行错,因为类外部不能调用 protected
// echo $lan->age;

/*
 总结:
public 可以在类外调用,权限最为宽松
protected 和 private 不能在类外调用

??public 在类内嗲用行不行
答:当然可以,类外都可以,权限最为宽松,类内就没问题了;

 */

 PHP多态的理解
 
  如果按php本身特点,不检测类型,本身就可以说是多态的,甚至变态的。
 
但是php5.3以后,引入了对于对象类型的参数检测
注意只能检查对象所属的类
 
其实,这对于php来说,限制了其灵活性,达到的java中多态的效果
 
反思多态:
其实就是
只抽象的声明父类,具体的工作由子类对象来完成
这样,不同的子类对象完成,有不同的特点
朗读
赞(0)
版权属于:

Dcr163的博客

本文链接:

https://www.dcr163.cn/29.html(转载时请注明本文出处及文章链接)

评论 (0)

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. https://Sites.google.com/view/vavada-online-casino
    2025-04-12
  2. https://x.com/jeetbuzzcom
    2025-04-07
  3. prozone.cc alternative
    2025-03-19
  4. urgent delivery
    2025-03-16
  5. faster indexing
    2025-03-05

标签云