php类与构造函数解析
关于类大家都有一定的认识这里只介绍在php中类值得注意的地方
----类的创建----
php使用关键字class创建一个类,并且使用一对大括号
如:
class name{
public $n="";
private $u="";
public function name() {
$n="233";
$u="23333";
}
public function rename($newn){
$this->n=$newn;//this表示这个类
}
}
结尾不打分号。则$n,$u为字段;name()为构造函数(__construct()也可定义构造函数,详见下文),可以为字段赋值;rename()为方法。
----字段----
比较
$obj=new name();
echo $obj->n;
与
$obj=new name();
echo $obj->u;
前者可执行,后者不可因为$u前声明了私有private。这一点是与c++类似的。
代码:
public static $nm ="2333333333333333" ;
为函数申明了一个静态字段。
通过类名与::可以直接访问该变量
echo name::$nm;
这一点也是与c++类似的。
php中还可以通过 self::+$+变量名 在类中访问静态字段,这时self相当于$this->。
方法的使用与字段类似
----构造函数----
在php5和早期版本中构造函数与类同名
在php5和之后的版本中魔术字 __construct() 可定义构造函数
魔术字 __construct() 可定义构造函数
class name{
public $n="";
private $u="";
public function __construct() {
$n="233";
$u="23333";
}
public function rename($newn){
$this->n=$newn;
}
}
构造函数可有参数
__construct($name="",$sex="man",$age=0){}
在申明对象时
$obj= new name("我","man",28);
如果没有给出参数,则默认为=后的值。
转自我的个人网站,转载标明出处:http://www.cirno.win/insert/page.php?id=6
php类与构造函数解析的更多相关文章
- tuple解包给类的构造函数
首先我们的第一步当然是将tuple解包.tuple提供了一个get函数来获取第N个元素.例如: get<1>(make_tuple(...)); 要将一个tuple全部拆解,就可以使用通过 ...
- java基础42 File类的构造函数及其方法
本文知识点(目录): 1.IO流(Input Output) 2.IO流技术的运用场景 3.File类的构造函数(方法) 4.File类的一些常用方法 5.实例(解析File类 ...
- OOP3(继承中的类作用域/构造函数与拷贝控制/继承与容器)
当存在继承关系时,派生类的作用域嵌套在其基类的作用域之内.如果一个名字在派生类的作用域内无法正确解析,则编译器将继续在外层的基类作用域中寻找该名字的定义 在编译时进行名字查找: 一个对象.引用或指针的 ...
- java.lang.Void类源码解析_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 在一次源码查看ThreadGroup的时候,看到一段代码,为以下: /* * @throws NullPointerEx ...
- scala中的面向对象定义类,构造函数,继承
我们知道scala中一切皆为对象,函数也是对象,数字也是对象,它是一个比java还要面向对象的语言. 定义scala的简单类 class Point (val x:Int, val y:Int) 上面 ...
- Java集合---Array类源码解析
Java集合---Array类源码解析 ---转自:牛奶.不加糖 一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Prim ...
- 不可或缺 Windows Native (21) - C++: 继承, 组合, 派生类的构造函数和析构函数, 基类与派生类的转换, 子对象的实例化, 基类成员的隐藏(派生类成员覆盖基类成员)
[源码下载] 不可或缺 Windows Native (21) - C++: 继承, 组合, 派生类的构造函数和析构函数, 基类与派生类的转换, 子对象的实例化, 基类成员的隐藏(派生类成员覆盖基类成 ...
- scala入门教程:scala中的面向对象定义类,构造函数,继承
我们知道scala中一切皆为对象,函数也是对象,数字也是对象,它是一个比java还要面向对象的语言. 定义scala的简单类 class Point (val x:Int, val y:Int) 上面 ...
- [转]c++类的构造函数详解
c++构造函数的知识在各种c++教材上已有介绍,不过初学者往往不太注意观察和总结其中各种构造函数的特点和用法,故在此我根据自己的c++编程经验总结了一下c++中各种构造函数的特点,并附上例子,希望对初 ...
随机推荐
- Ueditor的配置及使用
Ueditor官网:http://ueditor.baidu.com/website/ (项目需要JSP版本:UTF-8版) 1.配置 <script type="text/ja ...
- RealView编译器常用特有功能(转)
源:RealView编译器常用特有功能 一. 关键字和运算符 1. __align(n):指示编译器在n 字节边界上对齐变量. 对于局部变量,n 值可为 1.2.4 或 8. 对于全局变量,n 可以具 ...
- CABasicAnimation 基本动画
几个可以用来实现热门APP应用PATH中menu效果的几个方法 +(CABasicAnimation *)opacityForever_Animation:(float)time //永久闪烁的动画 ...
- Rest之路 -- 从第二个Rest application里面分析 Rest 方法
引言 在此之前,我们实现了第一个Rest application,通过分析她,我们了解了 Rest 程序的基本要素:这里,我们将会对第一个 Rest application 的功能进行扩充(实现 CR ...
- iOS 获取本地文件的各种坑
1.无论:TXT,EPUB,PDF等各种格式的文件,保存到本地的时候,最好都保存成字母或者数字,不要保存成汉字,否则,在取文件的时候,由于编码的问题,各种瓦特 2.如果文件名真的保存成了汉字,那么进行 ...
- ios 屏幕方向的设置
ref: http://www.cnblogs.com/niit-soft-518/p/5611298.html 实际的项目需求.root是TabBarController,里面有4个navigati ...
- 用74HC165读8个按键状态(转)
源:用74HC165读8个按键状态 //-------------------------------------------------------------------------- //来源: ...
- webstorm 激活码
WebStorm 2016 最新版激活(activation code方式) 注册时,在打开的License Activation窗口中选择“activation code”,在输入框输入下面的注册码 ...
- jsoup的介绍使用(转)
jsoup文档: http://www.open-open.com/jsoup/ 原链接: http://www.oschina.net/question/12_14127 jsoup 简介 Java ...
- JS input file 转base64 JS图片预览
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...