移动app接口编程技术-学习实现之PHP进阶 类与对象
2015-06-30 01:03
369 查看
创建类和对象
类的属性
属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。属性的变量可以设置初始化的默认值,默认值必须是常量。
访问控制的关键字代表的意义为:
public:公开的
protected:受保护的
private:私有的
默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。
受保护的属性与私有属性不允许外部调用,在类的成员方法内部是可以调用的。
类的方法
同属性一样,类的方法也具有public,protected 以及 private 的访问控制。
使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。
构造函数
构造函数和类有关,是类对象在创建的时候调用的,主要用一些类对象的初始化。
析构函数
析构函数是在类对象 销毁时调用,主要处理一些数据销毁之类的。当PHP代码执行完毕以后,会自动回收与销毁对象,因此一般情况下不需要显式的去销毁对象。
调用父类构造方法
调用父类的方法或变量 用“parent::“。
<?php class Car { public $name = '汽车'; public function getName() { return $this->name; } } $car = new Car(); echo $car->name.'<br>'; echo $car->getName();
类的属性
属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。属性的变量可以设置初始化的默认值,默认值必须是常量。
访问控制的关键字代表的意义为:
public:公开的
protected:受保护的
private:私有的
默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。
受保护的属性与私有属性不允许外部调用,在类的成员方法内部是可以调用的。
类的方法
同属性一样,类的方法也具有public,protected 以及 private 的访问控制。
使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。
<?php class Car { public $speed = 0; //增加speedUp方法,使speed加10 function speedUp() { $this->speed +=10; } public static $name = 'jarlen'; public static function getSpeed() { return 'ja'; } } $car = new Car(); $car->speedUp(); echo $car->speed; echo '<br><br>'.Car::$name.'<br><br>'; echo Car::getSpeed();
构造函数
构造函数和类有关,是类对象在创建的时候调用的,主要用一些类对象的初始化。
//方法名固定 function __construct() { print "调用构造函数"."<br>"; }
析构函数
析构函数是在类对象 销毁时调用,主要处理一些数据销毁之类的。当PHP代码执行完毕以后,会自动回收与销毁对象,因此一般情况下不需要显式的去销毁对象。
//方法名固定 function __destruct() { print "调用析构函数"."<br>"; }
<?php class Car { //增加构造函数与析构函数 function __construct() { print "调用构造函数"."<br>"; } function __destruct() { print "调用析构函数"."<br>"; } } $car = new Car(); //显示销毁对象 //unset($car);
调用父类构造方法
class Truck extends Car { function __construct() { print "子类构造函数被调用\n"; parent::__construct(); } }
调用父类的方法或变量 用“parent::“。
相关文章推荐
- Android_布局_文章列表
- Android Audio System
- [转]Android实战技术:理解Binder机制
- 学习笔记:Unity战斗卡牌游戏(二)-----滑动列表及克隆删除对象以及代码添加脚本
- Android中的Audio播放:控制Audio输出通道切换
- 使用php作为桥梁让android客户端和mysql数据库进行通信
- XenApp_XenDesktop_7.6实战篇之十五:StoreFront的配置
- XenApp_XenDesktop_7.6实战篇之十五:StoreFront的配置
- android edittext + listview 实现搜索listview中的内容
- android searchView加ListView共同使用
- 【Android】自定义控件实现九宫格解锁
- unity3d游戏制作入门教程
- actually mean Apple Airport
- [Android] ImageView.ScaleType设置图解
- android viewpager 无限循环实现gallery 效果
- GitHub上史上最全的Android开源项目分类汇总
- Android 使用android-support-multidex解决Dex超出方法数的限制问题
- 微信供销多用户版本 bingsnsV2.0
- mono fiddler 抓取app的包
- ceph-objectstore-tool工具使用示例