面向对象特性-封装
2016-03-12 14:47
288 查看
(1)封装
public (类外可以访问字段)
private (私有化,对字段进行封装的操作,对外不能访问)
protected(受保护,对字段进行封装的操作,只在类及其子类中可以使用)
(2)使用公共方法进行类内字段的调用和使用在类外面
(3)两个对字段进行取赋值的拦截器__get()和__set()
(4)常量
不能更改,定义为:
使用:
(5)静态类成员
需要创建供所有类实例共享的字段和方法,方法和字段都在数据区。
创建:
类中使用:
外部使用:
静态方法创建:
外部使用:
(6)instanceof关键字
确定一个对象是否是类的实例、类的子类,还是实现了某个特定接口
public (类外可以访问字段)
private (私有化,对字段进行封装的操作,对外不能访问)
protected(受保护,对字段进行封装的操作,只在类及其子类中可以使用)
(2)使用公共方法进行类内字段的调用和使用在类外面
public function _run(){ echo $this->_name;//意思为Computer->_name }
(3)两个对字段进行取赋值的拦截器__get()和__set()
private function __set($_key,$_value){ $this->$_key = $_value; } //取值 private function __get($_key){ return $this->$_key; }
(4)常量
不能更改,定义为:
const NAME = 'DELL';
使用:
echo Computer::NAME;
(5)静态类成员
需要创建供所有类实例共享的字段和方法,方法和字段都在数据区。
创建:
public static $_count = 0;
类中使用:
public function _add(){ self::$_count++; }
外部使用:
echo Computer::$_count;
静态方法创建:
public static function _run(){ self::$_count++; }
外部使用:
Computer::_run();
(6)instanceof关键字
确定一个对象是否是类的实例、类的子类,还是实现了某个特定接口
var_dump($computer instanceof Computer);//打印出true or false
相关文章推荐
- Objective-c 集合对象
- 分离出表单对象(Form Objects)
- 回调
- quick-cocos2d-x 图片资源加密
- oracle物化视图详解
- 任意值的运动框架
- 跟踪分析Linux内核的启动过程
- 对软件的看法
- (多线程)OutPut
- JVM 参数介绍
- codeforces-611C-New Year and Domino
- CF #343 div2 D Babaei and Birthday Cake dp+线段树维护+(离散)
- Linux 设备驱动开发 —— platform 设备驱动
- 第五届蓝桥杯 软件类省赛真题 第八题:兰顿蚂蚁
- UItabBarController
- Python 神经网络实现MNIST分类
- 电脑无法远程链接
- android权限大全
- https://github.com/1dot75cm/myrepo
- (多线程)ThreadTicketDemo1