Heim  >  Artikel  >  Backend-Entwicklung  >  Objektorientierte PHP-Klassen und instanziierte Objekte

Objektorientierte PHP-Klassen und instanziierte Objekte

不言
不言Original
2018-06-06 09:43:011846Durchsuche

Dieser Artikel stellt hauptsächlich objektorientierte PHP-Klassen und instanziierte Objekte vor. Jetzt kann ich ihn mit allen teilen, die ihn benötigen

Klasse

Deklaration

[修饰符] class 类名
{
    [属性]
    [方法]
}

Hinweise:

1) Der Klassenname folgt der Camel Case Benennung Spezifikation beginnend mit 大写

2 ) Die öffnenden und schließenden Tags der geschweiften Klammern müssen in einer eigenen Zeile stehen

Modifikator

private     私有

protected   保护

public      公共    

var         被视为public  (不建议使用)

Zugriffsrechte

Objektorientierte PHP-Klassen und instanziierte Objekte

Instantiierung

Verwenden Sie zum Instanziieren das neue Schlüsselwort.

Die Klammern sind nicht erforderlich.

Beispiel

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


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

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

Instanziiertes Objekt

Aufruf von Attributen und Methoden

Verwenden Sie ->, um auf nicht statische Eigenschaften zuzugreifen | Verfahren.

Beispiel

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


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

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

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

Interner Aufruf

Wenn eine Methode innerhalb einer Klassendefinition aufgerufen wird, können Sie Pseudovariablen $this verwenden.

$this stellt das verwendete Objekt dar.

Beispiel:

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

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

Transitive Zuweisung

1) Bei einfachem Typ werden beide Seiten der Zuweisung übergeben, 相互独立.

2) Wenn ein zusammengesetzter Typ ist, speichert die übergebene Zuweisung die Kennung des -Objekts , also 变化一致.

Beispiel für einen einfachen Typ:

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

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

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

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

Beispiel für einen zusammengesetzten Typ:

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   对象标识符

Referenzzuweisung

Ob es ist Unabhängig davon, ob es sich um einen einfachen Typ oder einen konformen Typ handelt, sind beide Änderungen konsistent.

Beispiel:

$a = 'abc';

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

var_dump($a);   // qq
var_dump($c);   // qq

Verwandte Empfehlungen:

Grundlegende Konzepte von objektorientiertem PHP

Das obige ist der detaillierte Inhalt vonObjektorientierte PHP-Klassen und instanziierte Objekte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn