类和对象

什么是类

什么是类?

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

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

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

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

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

或者说类是对象的模板。

类的声明

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

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

类的声明

<?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();

?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值