2014-10-05 102 views
2

我试图在PHP中学习OOP。困扰我的是理解什么是对象,以及如何知道我在看什么。我可能是非常错误的,但这是我似乎得到它迄今为止。PHP对象 - 什么是对象?

属性是类/方法中的变量。 方法是类中的函数。

对象是.....好.....这正是我迷失的地方。但是,据我得到它(如果我得到它),对象是那些属性和方法

这样的组合,如果

class person { 

    var $name; 

    function set_name($new_name) { 
     $this->name = $new_name; 
    } 

    function get_name() { 
     return $this->name; 
    } 
} 

类是人 财产为$命名 方法是set_name()

,并且将对象是像

$person_id = new person();? 

现在,如果我把一切都错了,哈哈。

+0

你是什么意思是什么对象?一个对象基本上是一个类的实例 – Ghost 2014-10-05 06:30:06

+0

@Ghost呃,我正在读几本电子书,每隔一段时间,单词对象会弹出,他们用技术性的方式描述它,我不觉得很清楚。然而,你对它的描述是一个类的实例,非常简单,我不需要再问一次。谢谢! – Josef 2014-10-05 11:37:40

回答

3

我认为你已经完全正确。一个对象是一个类的实例。

在你的情况,是的,$person_id是对象。它是类person的单个实例。它具有类的所有特性 - 它的属性和方法,但是它独立于类的其他实例使用它们。另请注意,$person_id是一个误导性名称。它不仅存储了个人ID,甚至还添加了id作为属性。对象不是只是个人的身份证,它是人 - 它是组成你班级成员的所有特征和功能的组合(如你所说),person

考虑

$person1 = new person(); 
$person2 = new person(); 

在这一点上,两个变量都是对象 - 类person的实例 - 他们都具有类相同的默认特性。

然后给他们的名字

$person1->set_name('Steve'); 
$person2->set_name('Ned'); 

现在每个对象已被修改并保存有关自身的独特信息。它们保留了相同的特征或结构person,但它们是独特的,彼此独立。

正如顾名思义,想象一个对象。它是一个东西,一个对象;它存储关于自身的独特信息,以及由它的类定义的结构。其他对象将具有相同的结构,相同的特征和内部工作原理,但它们是分开的和不同的事物,独立存在,独立行动并且独立演变的独立和不同的对象对象

+0

真的很高兴我问,现在事情在我脑海中更清晰了。谢谢! – Josef 2014-10-05 11:41:13

0

基本上是一个对象是类的实例..

所以这里$person_id是对象,而这个对象,你可以打电话给你的类person中定义的方法。