对象是现实世界的实体。对象是从面向对象编程(如 PHP)中的类定义的。当定义了一个类时,我们可以从该类中创建许多对象。定义了Example Class Car,那么Mercedes、BMW、Skoda都是Class Car的对象。类是对象的蓝图。类包含变量和函数。这些数据变量称为属性,数据函数称为数据方法。
广告 该类别中的热门课程 PHP 开发人员 - 专业化 | 8 门课程系列 | 3次模拟测试开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
对象的定义是这样的,对象是类的实例。我们可以使用 new 关键字创建该类的实例。我们可以创建该类的多个实例。这些实例现在可以访问类函数、类成员。
创建对象与实例化类相同。该实例是使用 new 关键字创建的。这个过程称为实例化。 由于对象是类的实例,并且可以使用 new 关键字创建,让我们看看如何创建这些实例。
语法:
objectname = new Classname();
示例:
$parrot = new Bird(); $pigeon = new Bird(); $woodpecker = new Bird();
上面是 Bird 类的三个不同对象。使用这些对象,我们可以访问 Bird 类的属性和函数。
什么是新关键字?
当我们实例化一个类时,我们实际上是在创建该类的一个对象。要创建对象,必须使用 new 关键字。在类中使用构造函数时,当使用 new 关键字初始化对象时,会自动调用构造函数。
属性是在类中定义的变量。然后这些变量由类的方法和对象使用。这些变量可以是公共的、受保护的或私有的。默认情况下,使用 public。变量的值可能包含也可能不包含默认值,这意味着该变量可以使用值初始化,也可以不使用值初始化。
变量名称区分大小写,这意味着 $name 与 $Name 不同。 有一个命名约定,如果变量包含多个单词,则第二个单词将以大写字母开头,如 $firstName、$lastName 等。
让我们看下面的程序来了解其属性。
class Birds { public $birdsFly = 'sky'; public $birdsSound = 'vocal'; public $birdsBuildNests = 'trees'; }
下面的程序解释了如何声明一个 Bird 类及其属性,比如鸟飞时会发出声音并筑巢,以及一个关于鸟所做的事情的方法。
代码:
<?php //example to access properties of a class class Birds { // properties public $birdsFly = 'sky'; public $birdsSound = 'vocal'; public $birdsBuildNests = 'trees'; //methods public function birdDoes() { echo 'Bird'; } } //object of class is declared $obj = new Birds(); //properties of class Bird are accessed using object echo '<br> Bird Flies = '.$obj->birdsFly; echo '<br> Bird Makes Sound = '.$obj->birdsSound; echo '<br> Bird Build Nests = '.$obj->birdsBuildNests; ?>
输出:
作为类的属性,我们可以在类中定义成员函数。然后可以从对象调用这些函数。这些函数被称为类的方法。这些功能可以是公共的、私有的或受保护的。默认是公开的。另外,在声明函数时,我们将其声明为
语法:
public function functionaname() { //statements }
示例:
class Bird { public function makesSound() { // statements } public function looksForFood() { // statements } } $obj = new Bird; echo $bird->makesSound(); echo $bird->looksForFood();
代码:
<?php //example to access methods of a class class Birds { // properties public $birdsFly; public $birdsBuildNests; //method 1 - set Method1 public function set_birdFlies($input) { $this->birdsFly = $input ; } //method 1 - get Method1 public function get_birdFlies() { return $this->birdsFly; } //method 2 - set Method2 public function set_BirdBuildsNest($input) { $this->birdsBuildNests = $input ; } //method 2 - get Method2 public function get_BirdBuildsNest() { return $this->birdsBuildNests; } } //object of class is declared $obj = new Birds(); $obj->set_birdFlies('Fly'); echo '<br> Bird Flies = '.$obj->get_birdFlies(); $obj->set_BirdBuildsNest('Trees'); echo '<br> Bird Builds Nest = '.$obj->get_BirdBuildsNest();?>
输出:
构造函数是一种特殊的方法。当创建新对象时,会自动调用此方法。无需从对象显式调用该方法。
语法:
__construct();// double underscores are used.
假设有两个类,一个是基类,另一个是派生类。如果派生类没有自己的构造函数并且想要继承基类构造函数,我们需要使用以下语法声明它:
语法:
parent::__construct();
代码:
<?php //example to use constructor in a class class Birds { // properties public $makesSound; // the constructor is called when object is created public function __construct($input) { $this->makesSound = $input; echo 'Bird makes Sound: '.$this->makesSound; } } //object of class is declared $obj = new Birds('Vocal'); ?>
输出:
在下面的程序中,我们将看到对象如何在内部通过创建对象来调用基类构造函数。由于使用了继承,我们可以使用parent:: __construct()来调用基类构造函数。
代码:
<?php //example to use constructor and object of a class class Birds { // properties public $bird_flies='sky'; // the constructor is called when object is created public function __construct() { echo 'In the Base Class Constructor'; } } class EagleBird extends Birds { function __construct() { parent::__construct(); } public function BirdDoes() { return $this->bird_flies; } } //object of class is declared $obj = new EagleBird(); echo '<br> Method : ' .$obj->BirdDoes(); ?>
输出:
本文解释了面向对象编程中什么是对象、如何创建对象、其语法、如何在给定程序中使用对象。另外,如何在 PHP 中声明和使用对象的属性和方法,如何在 PHP 中使用构造函数。本文提供的程序可能有助于解决您的疑问并很好地理解这个概念。
以上是PHP 中的对象的详细内容。更多信息请关注PHP中文网其他相关文章!