PHP对象 - 什么是对象?

时间:2014-10-05 06:27:17

标签: php oop

我试图在PHP中学习OOP。让我感到困惑的是理解对象是什么以及如何判断我何时看到对象。我可能非常错,但到目前为止,我似乎已经得到了它。

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

物体......好......这就是我迷失的地方。但是,据我所知(如果我正在使用它),对象就是这些属性和方法的组合

所以,如果

class person {

    var $name;

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

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

班级是人 该属性是$ name 方法是set_name()

并且对象会像某些东西一样

$person_id = new person();?

现在,如果我一切都错了,请大声笑。

2 个答案:

答案 0 :(得分:3)

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

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

考虑

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

此时,两个变量都是对象 - 类person的实例 - 并且它们都具有相同的类默认特征。

然后给他们起名字

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

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

顾名思义,想象一个对象。这是一个东西,一个对象;它存储自身独有的信息,其结构由其类定义。此类的其他对象将具有相同的结构,相同的特征和内部工作方式,但它们是独立且不同的东西,独立且不同的对象存在,行为和独立发展。

答案 1 :(得分:0)

基本上,对象是类的实例..

所以这里$person_id是对象,你可以用这个对象调用你在类person中定义的方法。