PHP对象Object的概念
类提供了⼀个基础,可以在此基础上创建实体(即这个类所建模的实体)的特定实例,这些特定实例称为对象(object)
例如,员⼯管理应⽤程序可能包括⼀个EmPloyee 类。然后可以⽤这个类来创建和维护特定实例,⽐如Gonn和Sally。
根据预定义的类创建对象常称为类的实例化(class instantiation)。
对象使⽤new关键字创建,如下:
复制代码代码如下:
$employee = new Employee();
创建对象之后,这个刚实例化的对象就具有了类中定义的所有性质和⾏为。
如何实例化对象
实例化类和实例化对象⾯向对象程序的单位就是对象,但对象⼜是通过类的实例化出来的,既然我们类会声明了,下⼀步就是
实例化对象了。当定义好类后,我们使⽤new关键字来⽣成⼀个对复制代码代码如下:
class Person
{
//下⾯是⼈的成员属性
var$name; //⼈的名字
var$sex; //⼈的性别
var$age; //⼈的年龄
//下⾯是⼈的成员⽅法
function say() //这个⼈可以说话的⽅法
{
echo "这个⼈在说话";
}
function run() //这个⼈可以⾛路的⽅法
{
echo "这个⼈在⾛路";
}
}
$p1=new Person();
$p2=new Person();
$p3=new Person();
$p1=new Person();
这条代码就是通过类产⽣实例对象的过程,$p1就是我们实例出来的对象名称,同理,$p2, $p3也是我
们实例出来的对象名称,⼀个类可以实例出多个对象,每个对象都是对像在PHP⾥⾯和整型、浮点型⼀样,也是⼀种数据类,都是存储不同类型数据⽤的,在运⾏的时候都要加载到内存中去⽤,那么对象在内存⾥⾯是怎么体现的呢?内存$p1=new Person(); 对于这个条代码,$p1是对象名称在栈内存⾥⾯,new Person()是真正的对象是在堆内存⾥⾯的。
等号右边是真正的对象实例,在堆内存⾥⾯的实体。这⾥⼀共有3次new Person(),所以会在堆⾥⾯开辟3个空间,产⽣3个实例对象,每个对象之间都是相互独⽴的,使每个在堆⾥⾯的实例对象是存储属性的,⽐如说,现在堆⾥⾯的实例对象⾥⾯都存有姓名、性别和年龄。每个属性⼜都有⼀个地址。$p1=new Person();等号的右边
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论