PHP 对象 - 什么是对象?

标签 php oop

我正在尝试用 PHP 学习 OOP。令我困惑的是如何理解物体是什么以及如何辨别我正在看的物体。我可能错了,但到目前为止我似乎是这样理解的。

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

而对象是......嗯......这正是我迷失的地方。但是,据我所知(如果我明白了),对象是这些属性和方法的组合

那么,如果

class person {

    var $name;

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

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

类(class)是人 该属性是 $name 方法是set_name()

物体会是这样的吗

$person_id = new person();?

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

最佳答案

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

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

考虑

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

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

然后给他们起名字

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

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

顾名思义,想象一个对象。它是一个东西,一个对象;它存储关于其自身的信息,这些信息对于其自身来说是唯一的,并具有由其类定义的结构。此类的其他对象将具有相同的结构、相同的特征和内部工作原理,但它们是独立且不同的事物,是存在、运行和运行的独立且不同的对象。独立进化。

关于PHP 对象 - 什么是对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26200198/

相关文章:

php - 如何在 Laravel 中显示注册用户数?

flash - AS3 : ERROR 1046: Type was not found or was not a compile-time constant: Stage and TextField

C++ 类成员函数 : how to write these functions?

java - 你能帮我理解封装吗(初学者)?

PHP OOP 和 PDO

phpseclib 给我一个奇怪的错误

.net - 派生类的泛型版本可以使用泛型类型重写基方法吗?

c# - 仿函数和 "generics"有什么区别

php - Sphinx 中的拼写更正?

php - PayPal 自适应支付 'Pay' 请求中抛出“PPConnectionException”异常