php面向对象之类与实例化对象

不言
Lepaskan: 2023-03-29 22:00:01
asal
1884 orang telah melayarinya

这篇文章主要介绍了关于php面向对象之类与实例化对象,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

声明

[修饰符] class 类名
{
    [属性]
    [方法]
}
Salin selepas log masuk

注意事项:

1)类名遵循大写开头的驼峰命名规范

2)花括号的开始、结束标记,须自成一行.

修饰符

private     私有

protected   保护

public      公共    

var         被视为public  (不建议使用)
Salin selepas log masuk

访问权限

这里写图片描述

实例化

使用new关键字,实例化。

括号可不加。

例子

// 1.声明类
class Dog
{
    // 2.定义属性
    public $name = '旺财';
    public $sex = null;


    // 3.定义方法
    public function bark()
    {
        echo '汪汪~';
    }
}

// 4.实例化
$d1 = new Dog();
Salin selepas log masuk

实例化对象

属性、方法的调用

使用 ->,来访问非静态属性 | 方法。

例子

// 声明类
class Dog
{
    // 定义属性
    public $name = '旺财';
    public $sex = null;


    // 定义方法
    public function bark()
    {
        echo '汪汪~';
    }
}

// 实例化
$d1 = new Dog();

// 使用属性和方法
echo $d1 -> name;
echo &#39;<br/>&#39;;
echo $d1 -> bark();
Salin selepas log masuk

内部调用

方法在类定义的内部被调用时,可以使用伪变量$this

$this,就代表着正在使用的对象。

例子:

// 声明类
class Dog
{
    // 定义属性
    public $name = &#39;旺财&#39;;
    public $sex = null;

    public function intruduce()
    {
        echo &#39;我的名字是&#39;.$this->name;
    }
}
Salin selepas log masuk

传递赋值

1)简单类型时,传递赋值的双方,相互独立

2)复合类型时,传递赋值存的都是对象的标识符,所以变化一致

简单类型例子:

$a = &#39;abc&#39;;

// 传递赋值
$b = $a;

// 更改a的值
$a = &#39;qq&#39;;

var_dump($a);   // qq
var_dump($b);   // abc
Salin selepas log masuk

复合类型例子:

class MyClass
{
    public $str = &#39;abc&#39;;
}

// $a 存的是对象的标识符
$a = new MyClass();

// 传递赋值  相当于把标识符赋值给了$b
$b = $a;

var_dump($a);    // abc
var_dump($b);    // abc

// 更改a对象str属性的值
$a -> str =&#39;111&#39;;

// $a和$b存的都是标识符
var_dump($a);    // 111
var_dump($b);    // 111


// 更改a本身的值
$a = 123;

var_dump($a);    // 123
var_dump($b);    // 111   对象标识符
Salin selepas log masuk

引用赋值

不论是简单类型也好,符合类型也好,双方都是变化一致的。

例子:

$a = &#39;abc&#39;;

// 引用赋值
$c = &$a;

var_dump($a);   // qq
var_dump($c);   // qq
Salin selepas log masuk

 相关推荐:

php面向对象的基本概念

Atas ialah kandungan terperinci php面向对象之类与实例化对象. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan