博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP-面向对象(三)
阅读量:5109 次
发布时间:2019-06-13

本文共 1026 字,大约阅读时间需要 3 分钟。

封装是把一些相关的属性和行为隐藏起来,从而得到保护和安全

封装关键字

public 表示全局,类内部外部子类都可以访问;

protected表示受保护的,只有本类或子类或父类中可以访问;

private表示私有的,只有本类内部可以使用;

 

Public

Protected

Private

全局

X

X

继承类

X

本类

class MyPc{   public $name;  //全局属性,任何位置都可以引用   protected $price;   //保护属性,只有本类或子类或父类中可以访问   private function vod() {  //私有属性,只有本类内部可以使用;         $this->name;           }    ……}

 封装相关函数:__set() , __get()

某些特定操作的时候需要访问和赋值封装的类型,这个时候我们就需要其他的函数帮我们完成这些操作,PHP为我们提供了个方法名:__set() , __get()

__set() 取得当前类中封装过私有属性或者方法重新执行或赋值操作

__set($Name,$Value)

 __get() 取得当前类中封装过属性或方法并转换成共有属性

__get()

 例:

class MyPc{    private $name;    function __construct($name=""){	return $this->name=$name;    }    function __get($name){	return $this->name."====";    }    function __set($n,$v){	if($v>=222){		$this->$n = $v;	}    }    private function power(){	return $this->name."power...";    }    function ok(){	return $this->power()."ok";    } }$pc1 = new MyPc("my pc");$pc1->name="55";echo $pc1->name."
";echo $pc1->ok();

 

转载于:https://www.cnblogs.com/Hebe/archive/2013/05/30/3108602.html

你可能感兴趣的文章
WPS莫名占用系统大部分资源
查看>>
一些常用的正则表达式
查看>>
前端取后台变量的值的写法?
查看>>
BZOJ 1645: [Usaco2007 Open]City Horizon 城市地平线 扫描线 + 线段树 + 离散化
查看>>
误删表数据恢复
查看>>
【codevs1949】兔兔与蛋蛋的游戏
查看>>
Windows Mobile Developer Resource Kit
查看>>
C语言 · 字符串变换
查看>>
C语言 · 确定元音字母位置
查看>>
任务表 燃尽图
查看>>
Python 列表的切片和连接
查看>>
在Eclipse中调试web项目
查看>>
selenium webdriver(1)—浏览器操作
查看>>
[转] Ansible 系列之 Playbooks 剧本
查看>>
Nginx源码完全注释(3)ngx_list.h / ngx_list.c
查看>>
给DeDeCms栏目增加缩略图功能
查看>>
软件工程实验二图
查看>>
Usaco2008 Jan
查看>>
django总结
查看>>
kendo-ui的使用和开发自己的组件
查看>>