美文网首页
类和对象

类和对象

作者: 布尔教育 | 来源:发表于2016-12-28 12:13 被阅读0次

    什么是类

    什么是类?

    这几乎是每一位面向对象初学者要问到的问题。那么我们暂且放开什么是类,我来问大家什么是人类?

    有同学会回答:具有相同特征的某一类动物就是人类。

    好,这位同学回答的很好,可能有的同学就不以为然了,那么一类动物的一类又是什么?好吧,我们陷入了一个鸡生蛋还是蛋生鸡的困境了。

    你就记住具有相同特征的一群动物,我们称之为类。这个时候你想必知道了类他指的是一群,是一个集合,而且是一个抽象的集合。那么张三跟李四呢?是不是人?是的,他们是更具体的人类。

    这就是我们后面要跟大家讲的,类是对象的抽象,而对象是类的具体表现,也就是类实现。

    或者说类是对象的模板。

    类的声明

    类的声明需要使用关键字class这一点跟我们的函数的声明有所区别

    类别 函数
    声明关键字 class function
    修饰词 static,public,protected,private,abstract,final static
    特征值 类成员属性 变量
    行为 类成员方法 函数
    扩展性 通过继承来实现扩展性 重新定义新函数

    类的声明

    <?php 
    
    class People
    {
        public $name = 'xiaoming';
    
        protected $age = 32;
    
        private $salary = 1500;
    
        public function say()
        {
            return $this->name;
        }
    
        protected function sayAge()
        {
            return $this->age;
        }
    
        private function saySalary()
        {
            return $this->salary;
        }
    }
    
    ?>
    

    什么是对象

    对象是具体的某一事物,对象就是类的实例化,具体体现。

    类与对象的关系

    1. 类是对象的抽象集合
    2. 对象是类的实例化,或称类的具体表现

    举例:

    对象是对现实世界中实体的描述。

    如果我说具有手足、鼻子眼睛等器官,同时有说话,吃饭睡觉功能的动物的集合,你可能在脑海中只是很模糊的一个概念,只是知道有这样那样的器官和功能。

    但是我这个时候说,你看张三,他就是这个集合的一份子,这一瞬间你就明白了,我要表达的是什么了。对,张三就是我们人类实例化,具体化的某个动物。而人类就是由张三抽象出的一个群体。

    实例化一个对象

    <?php 
    
    class People
    {
        public $name = 'xiaoming';
    
        protected $age = 32;
    
        private $salary = 1500;
    
        public function __construct($name, $age, $salary)
        {
            $this->name = $name;
            $this->age = $age;
            $this->salary = $salary;
        }
    
        public function say()
        {
            return $this->name;
        }
    
        protected function sayAge()
        {
            return $this->age;
        }
    
        private function saySalary()
        {
            return $this->salary;
        }
    }
    
    $zhangsan = new People('zhangsan', 22, 1000);
    
    echo $zhangsan->say();
    
    ?>
    

    相关文章

      网友评论

          本文标题:类和对象

          本文链接:https://www.haomeiwen.com/subject/frjyvttx.html