php类和对象的关系
面向对象(Object Oriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。下面我们为大家介绍一下php中类与对象的关系。
推荐教程:PHP视频教程
一、类和对象的关系
类的实体化结果是对象,而对象的抽象就是类。在开发过程中,我们通常都是先抽象(幻想)出一个类,再用该类去创建对象(实现幻想的内容)。在程序中,直接使用的是我们(实现幻想)的对象,而不是抽象(幻想)的类。
二、面向对象和面向过程
1、什么是面向过程
面向过程就好比一个人 自己洗衣服、做饭,什么事情都是自己解决
2、什么是面向对象
面向对象就是那个人有了对象,让对象去洗衣服、做饭。
三、如何抽象一个类
class 类名{ 成员属性: 姓名、性别、年龄、身高、体重 成员方法: 说话、走路、学习、吃饭、开车 }
所有的类都是从成员属性和成员方法这两方面去声明,属性和方法都是类中的成员,所以属性又叫做成员属性,方法又叫做成员方法
1、成员属性 -->特征
在对象中直接声明变量就称为成员属性,可以在类中声明多个成员变量,即对象中可以有多个成员属性
class Person{ var $name; //声明第一个成员属性,用于储存人的名字 var age; //声明第一个成员属性,用于储存人的年龄 var $sex; //声明第一个成员属性,用于储存人的性别 }
2、成员方法 -->功能
class Person{ var $name; //声明第一个成员属性,用于储存人的名字 var $age; //声明第一个成员属性,用于储存人的年龄 var $sex; //声明第一个成员属性,用于储存人的性别 function say(){ //声明第一个方法 echo '人在说话'; //定义人说话的功能 } function run(){ //声明第二个方法 echo '人在跑步'; //定义人跑步的功能 } function eat(){ //声明第三个方法 echo '人在吃饭'; //定义人吃饭的功能 } }
对象就是把相关的属性和方法组织在一起。其中成员属性和成员方法都是可以选的,可以只有成员属性,也可以只有成员方法,也可以没有成员。
四、实例化对象
一个类可以声明多个对象,让对象去访问成员属性和成员方法
class Person{ var $name; //声明第一个成员属性,用于储存人的名字 var $age; //声明第一个成员属性,用于储存人的年龄 var $sex; //声明第一个成员属性,用于储存人的性别 function say(){ //声明第一个方法 echo '人在说话'; //定义人说话的功能 } function run(){ //声明第二个方法 echo '人在跑步'; //定义人跑步的功能 } function eat(){ //声明第三个方法 echo '人在吃饭'; //定义人吃饭的功能 } } // 实例化对象 $sqyy = new Person(); //成员属性赋值 $sqyy -> name = "伊川"; $sqyy -> sex = "男"; $sqyy -> age = 26; //访问对象中的成员方法 $sqyy->eat();
五、特殊的对象引用 "$this"
上面的示例中,我们是实例化一个对象之后再给成员属性赋值和访问成员方法的。那么 $this也可以在成员方法中使用,代表的是当前的这个对象
成员方法调用前的对象是谁,$this就代表谁
class Person{ var $name; function info(){ $this ->name = "SQYY"; } }
六、构造方法与析构方法
1、构造方法
构造方法是对象创建完成后第一个被对象自动调用的方法,会初始化这个对象,当使用new关键字实例化对象时会自动触发。
<?php class Person{ //下面是声明人的成员属性,都是没有初始值的,在创建对象时,使用构造方法赋给初始值 var $name; //定义人的名字 var $sex; //定义人的性别 var $age; //定义人的年龄 function __construct($name="SQYY",$sex="男",$age=1){ $this -> name = $name; //在创建对象时,使用传入的参数$name为成员属性 $this->name赋初值 $this -> sex = $sex; //在创建对象时,使用传入的参数$sex为成员属性 $this->sex赋初值 $this -> age = $age; //在创建对象时,使用传入的参数$sex为成员属性 $this->age赋初值 } //下面声明人的成员方法 function say(){ echo "我的名字:" .$this ->name. " ,性别:" .$this -> sex ." 年龄" .$this ->age. "。<br>"; } } $person1 = new Person(); //创建对象$person1时会自动执行构造方法,默认传参 $person2 = new Person('张三'); //创建对象$person2时会自动执行构造方法,传入第一个参数,其他默认传参 $person3 = new Person('李四','男'); //创建对象$person3时会自动执行构造方法,传入前两个参数,其他默认传参 $person4 = new Person('王五','女','20'); //创建对象$person4时会自动执行构造方法,传入所有参数 $person1 ->say(); $person2 ->say(); $person3 ->say(); $person4 ->say(); ?>
运行结果
2、析构方法
对象在销毁之前最后一个被对象自动调用的方法,先创建 传入变量后销毁
<?php header('Content-type:text/html;charset=utf-8'); // 定义一个汽车的类 class car{ // 成员属性 public $name; public $color; //构造方法 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你创建了".$this->name.'<br>'; } // 析构方法 public function __destruct(){ echo "你销毁了".$this->name.'<br>'; } } // 实例化对象 $hanma = new car('悍马','粉色','H2'); $bmw = new car('宝马','红色','X7'); $benchi = new car('奔驰','黑色','s600'); // unset($bmw); $bmw = '1111'; ?>
运行结果
如果我们不引用变量,创建完对象之后就会销毁。
<?php header('Content-type:text/html;charset=utf-8'); // 定义一个汽车的类 class car{ // 成员属性 public $name; public $color; //构造方法 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你创建了".$this->name.'<br>'; } // 析构方法 public function __destruct(){ echo "你销毁了".$this->name.'<br>'; } } // 实例化对象 new car('悍马','粉色','H2'); new car('宝马','红色','X7'); new car('奔驰','黑色','s600'); ?>
运行结果
Atas ialah kandungan terperinci php类和对象的关系. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Jika anda seorang pembangun PHP yang berpengalaman, anda mungkin merasakan bahawa anda telah berada di sana dan telah melakukannya. Anda telah membangunkan sejumlah besar aplikasi, menyahpenyahpepijat berjuta-juta baris kod dan mengubah suai sekumpulan skrip untuk mencapai op

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Apakah kaedah sihir PHP? Kaedah sihir PHP termasuk: 1. \ _ \ _ Membina, digunakan untuk memulakan objek; 2. \ _ \ _ Destruct, digunakan untuk membersihkan sumber; 3. \ _ \ _ Call, mengendalikan panggilan kaedah yang tidak wujud; 4. \ _ \ _ Mendapatkan, melaksanakan akses atribut dinamik; 5. \ _ \ _ Set, melaksanakan tetapan atribut dinamik. Kaedah ini secara automatik dipanggil dalam situasi tertentu, meningkatkan fleksibiliti dan kecekapan kod.
