代码编织梦想

目录

一、定义类

二、成员属性

 三、成员方法


一、定义类

        类的定义与创建类是具有相同属性和服务的一组对象的集合。它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和方法说明两个主要部分。

        类用于表示要在应用程序中处理的实际事物。例如,假设要创建一个管理公共图书馆的应用程序,可能就要包括一些类来表示书籍、杂志、员工、特殊事件、顾客以及需要管理的其他事物。每个实体都包含一组性质和行为,在OOP中分别称为字段(field)和方法(method),它们定义了实体。

PHP中一般的类创建语法如下:

class Class_Name { 
// 属性声明 
// 方法声明 
}

创建一个类,代码如下:

class SimpleClass
{
    // 声明属性
    public $var = 'a default value';

    // 声明方法
    public function displayVar() {
        echo $this->var;
    }
}

二、成员属性

在类中直接声明的变量称为成员属性(也可以称为成员变量),可以在类中声明多个变量,即对象中可以有多个成员属性,每个变量都存储对象不同的属性信息。

语法格式如下:

访问权限修饰符 属性名称 = 属性值;

成员属性的类型可以是 PHP 中的标量类型和复合类型,所以也可以是其他类实例化的对象,但在类中使用资源和空类型是没有意义的。 前面我们绍过,声明变量时不需要任何关键字修饰,但是在类中声明成员属性时,变量前面一定要使用一个关键字来修饰,例如 public、private,static 等,但这些关键字修饰的变量都具有一定的意义。如果不需要有特定意义的修饰,可以使用“var”关键字,一旦成员属性有其他的关键字修饰就需要去掉“var”。

常用访问权限修饰符及其含义如下所示:

public:公共的,在类的内部、子类中或者类的外部都可以使用,不受限制;

protected:受保护的,在类的内部和子类中可以使用,但不能在类的外部使用;

private:私有的,只能在类的内部使用,在类的外部或子类中都无法使用。

注意:一个类,即一对大括号之间的全部内容都要在一段代码中,也就是一个之间,不能分割成多块。

<?php
        class Students{
            var $name;
            public $age;
            private $sex;
            protected  $school;
        }
?>
<?php
class main{
    private $a = 1;
    public $b = 'benben';
    protected $c = 'dadan';
    function E(){
        echo "这里输出的是主类中能调用的内容"."\n";
        echo $this->a."\n";
        echo $this->b."\n";
        echo $this->c."\n";
    }
}

class sec extends main{
    function C(){
        echo "这里输出的是子类中能调用的内容"."\n";
        echo $this->a."\n";
        echo $this->b."\n";
        echo $this->c."\n";
    }

}
$main = new main();
$sec = new sec();
echo $main->E();
echo $sec->C();

echo "这里输出的是外部调用的内容"."\n";
//echo var_dump($main->a);
echo "\n";
echo var_dump($main->b);
echo "\n";
echo var_dump($main->c);

 三、成员方法

在类中定义的函数被称为成员方法。函数和成员方法唯一的区别就是,函数实现的是某个独立的功能,而成员方法是实现类中的一个行为,是类的一部分。可以在类中声明多个成员方法,成员方法的声明和函数的声明完全一样,只不过在声明成员方法时可以在function关键字的前面加一些访问权限修饰符来控制访问权限,例如 public、private、protected 等。

在上面示例中创建的 Students 类中创建一些成员方法。

<?php
    class Students{
        var $name;
        public $age;
        private $sex;
        public static $school;
        public function Write(){
           
        }
        protected static function Read(){

        }
        function Listen(){
           
        }
    }
?>

成员方法前面的权限修饰符可以省略,省略后默认权限为 public。在类中成员属性和成员方法的声明都是可选的,可以同时存在,也可以单独存在,具体可以根据实际情况而定。

下面来看一下在PHP中->的秘密,如下代码。

<?php
class Num {        //定义了一个Num的类
    public $a = 0;            //定义了一个共有属性的成员变量a
    //增加Add方法,使a加10
    public function Add(){    //定义了一个成员方法Add,作用是让a+10
        $this->a+=10;         //$this 调用当前类中的成员变量a
    }
}
$num = new Num();              //Num类实体化为对象    
$num->Add();                   //调用了Add方法,a+10
echo $num->a;
?>

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_60463414/article/details/126321915

php生成空对象的两种方法_yangshuolll的博客-爱代码爱编程_php 空对象

最基本的php中生成类,首先就要先定义类,包括成员变量和成员方法等,还要设计构造函数给成员变量赋值。 有没有一种快捷的方式,能够迅速创建出空对象,并对对象的成员变量赋值。 下面提供两种迅速生成空对象的方式,然后迅速对对象赋值。 方法1. 定义空类,空类生成空对象,然后对对象的成员变量赋值 方法2. 使用stdClass直接生成空对象 下面附

php 类和对象(类的属性)_wlwc0627的博客-爱代码爱编程

在类中定义的变量称之为属性,通常属性根数据库中的字段有一定的关联,因此 也可以称其为"字段"。 常见的属性声明是由关键字public,protected,var或private开头,后面跟一个普通的变量声 来组成。还有一些成员属性包括,静态static,常量const。 public:默认值,表示全局的,类内部外部子类都可以

php判断对象是否存在属性_PHP检查对象或类中是否存在属性-爱代码爱编程

echo $person->middleName ?? 'Person does not have a middle name'; OR if($person->middleName ?? false) { echo $person->middleName; } else { echo 'Person does not ha

php中怎么创建对象,php创建对象有哪几种方法-爱代码爱编程

php创建对象的方法有:1、使用【new 类名()】创建;2、将类名以字符串的方式放在一个变量中;3、利用对象来创建对象;4、使用【new self()】创建;5、使用【new parent()】创建;6、使用【new static】创建。 方法有如下几种: 1、用new 类名()创建一个对象 2、将类名以字符串的方式放在一个变量中 (学习