<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • PHP中類的定義

    時(shí)間:2024-10-02 20:32:34 PHP 我要投稿
    • 相關(guān)推薦

    PHP中關(guān)于類的定義

      在闡述類的概念之前我們來先說說面向?qū)ο缶幊痰母拍睿好嫦驅(qū)ο蟮某绦蛟O(shè)計(jì)(Object-OrientedProgramming,簡記為OOP)立意于創(chuàng)建軟件重用代碼,具備更好地模擬現(xiàn)實(shí)世界環(huán)境的能力,這使它被公認(rèn)為是自上而下編程的優(yōu)勝者。它通過給程序中加入擴(kuò)展語句,把函數(shù)“封裝”進(jìn)編程所必需的“對(duì)象”中。面向?qū)ο蟮木幊陶Z言使得復(fù)雜的工作條理清晰、編寫容易。說它是一場(chǎng)革命,不是對(duì)對(duì)象本身而言,而是對(duì)它們處理工作的能力而言。對(duì)象并不與傳統(tǒng)程序設(shè)計(jì)和編程方法兼容,只是部分面向?qū)ο蠓炊鴷?huì)使情形更糟。除非整個(gè)開發(fā)環(huán)境都是面向?qū)ο蟮模駝t對(duì)象產(chǎn)生的好處還沒有帶來的麻煩多。有人可能會(huì)說PHP不是一個(gè)真正的面向?qū)ο缶幊痰恼Z言,PHP是一個(gè)混合型語言,你可以使用面向?qū)ο缶幊蹋部梢允褂脗鹘y(tǒng)的過程化編程。然而,對(duì)于大型項(xiàng)目的開發(fā),你可能想需要在PHP中使用純的面向?qū)ο缶幊倘ヂ暶黝悾以谀愕捻?xiàng)目開發(fā)只用對(duì)象和類。隨著項(xiàng)目越來越大,使用面向?qū)ο缶幊炭赡軙?huì)有幫助,面向?qū)ο缶幊檀a很容易維護(hù),容易理解和重復(fù)使用,這些就是軟件工程的基礎(chǔ)。在基于Web的項(xiàng)目中應(yīng)用這些概念就成為將來網(wǎng)站成功的關(guān)鍵。

      對(duì)象(Object)是問題域或?qū)崿F(xiàn)域中某些事物的一個(gè)抽象,它反映此事物在系統(tǒng)中需要保存的信息和發(fā)揮的作用;它是一組屬性和有權(quán)對(duì)這些屬性進(jìn)行操作的一組服務(wù)的封裝體。關(guān)于對(duì)象要從兩方面理解:一方面指系統(tǒng)所要處理的現(xiàn)實(shí)世界中的對(duì)象;另一方面對(duì)象是計(jì)算機(jī)不直接處理的對(duì)象,而是處理相應(yīng)的計(jì)算機(jī)表示,這種計(jì)算機(jī)表示也稱為對(duì)象。簡單的來說,一個(gè)人就是一個(gè)對(duì)象,一個(gè)尺子也可以說是個(gè)對(duì)象。當(dāng)這些對(duì)象可以用數(shù)據(jù)直接表示時(shí),我們就稱他為屬性,尺子的度量單位可以是厘米,公尺或英尺,這個(gè)度量單位就是尺子的屬性。

      在PHP里我們可以定義一個(gè)類,類(Class)就是指變量與一些使用這些變量的函數(shù)的集合。PHP是一種松散類型的語言,所以通過類型重載不起作用,通過參數(shù)的個(gè)數(shù)不同來重載也不起作用。有時(shí)在面向中重載構(gòu)造函數(shù)非常好,這樣你可以通過不同的方法創(chuàng)建對(duì)象(傳遞不同數(shù)量的參數(shù))。在PHP中就是通過類來實(shí)現(xiàn)的。

      在PHP中是通過類來完成信息封裝的,在PHP中定義類的語法是:

      復(fù)制代碼 代碼如下:<?php

      classClass_name//在面向?qū)ο缶幊填愔校?xí)慣上類的第一個(gè)字符為大寫,并且必須符合變量的命名規(guī)則。

      {

      //函數(shù)與變量的集合

      }

      ?>

      在定義類時(shí)你可以按自已的喜好的格式進(jìn)行定義,但最好能保持一種標(biāo)準(zhǔn),這樣開發(fā)起來會(huì)更有效些。

      數(shù)據(jù)成員在類中使用"var"聲明來定義,在給數(shù)據(jù)成員賦值之前,它們是沒有類型的。一個(gè)數(shù)據(jù)成員可以是一個(gè)整數(shù),一個(gè)數(shù)組,一個(gè)相關(guān)數(shù)組(AssociativeArray)或者是一個(gè)對(duì)象。

      下面是一個(gè)類定義的實(shí)際例子:

      復(fù)制代碼 代碼如下:<?php

      classStudent

      {

      var$str_Name;//姓名

      var$str_Sex;//性別

      var$int_Id;//學(xué)號(hào)

      var$int_English;//英語成績

      var$int_maths;//數(shù)學(xué)成績

      }

      ?>

      這是一個(gè)很普通定義類的簡單例子,用于顯示學(xué)生的學(xué)習(xí)成績,類名為Student,Student類包涵了一個(gè)學(xué)生的基本屬性:姓名、性別、學(xué)號(hào)、英語成績和數(shù)學(xué)成績。

      function我們稱之為在類中被定義的函數(shù),在函數(shù)中訪問類成員變量時(shí),你應(yīng)該使用$this->var_name,其中var_name指的是類中被聲明的變量,否則對(duì)一個(gè)函數(shù)來說,它只能是局部變量。我們先定義一個(gè)Input()的函數(shù),用來給實(shí)例中的對(duì)象賦以初值:

      復(fù)制代碼 代碼如下:functionInput($Name,$Sex,$Id,$Englis,$Maths)

      {

      $this->str_Name=$Name;

      $this->str_Sex=$Sex;

      $this->int_Id=$Id;

      $this->int_Englis=$English;

      $this->int_Maths=$Maths;

      }現(xiàn)在我們?cè)俣x一個(gè)叫“ShowInfo()”的函數(shù),用于打印學(xué)生的基本情況:

      復(fù)制代碼 代碼如下:functionShowInfo()//定義ShowInfo()函數(shù)

      {

      echo(“姓名:$this->str_Name

      ”);

      echo(“性別:$this->str_Sex

      ”);

      echo(“學(xué)號(hào):$this->int_Id

      ”);

      echo(“英語成績:$this->int_English

      ”);

      echo(“數(shù)學(xué)成績:$this->int_Maths

      ”);

      }

      而定義好的類則必須使用new關(guān)鍵詞來生成對(duì)象:

      $A_student=newStudent;

      例如我們要為一個(gè)名為$Wing的對(duì)象創(chuàng)建實(shí)例,并進(jìn)行賦值,可以使用下面的代碼:

      $Wing=newStudent;//用new關(guān)鍵詞來生成對(duì)象

      $Wing->Input(“Wing”,”男”,33,95,87);

      //分別輸入Wing的姓名、性別、學(xué)號(hào)、英語成績、數(shù)學(xué)成績,其中姓名和性別是字符型變量,所以需要用雙引號(hào),其它為數(shù)值型變量則不需要。

      通過下面這段完整的源代碼,我們就可以很清楚的看到類在PHP是怎么被運(yùn)用的:

      復(fù)制代碼 代碼如下:<?php

      classStudent

      {

      var$str_Name;

      var$str_Sex;

      var$int_Id;

      var$int_English;

      var$int_maths;

      functionInput($Name,$Sex,$Id,$English,$Maths)

      {

      $this->str_Name=$Name;

      $this->str_Sex=$Sex;

      $this->int_Id=$Id;

      $this->int_English=$English;

      $this->int_Maths=$Maths;

      }

      functionShowInfo()

      {

      echo(“姓名:$this->str_Name

      ”);

      echo(“性別:$this->str_Sex

      ”);

      echo(“學(xué)號(hào):$this->int_Id

      ”);

      echo(“英語成績:$this->int_English

      ”);

      echo(“數(shù)學(xué)成績:$this->int_Maths

      ”);

      }

      }

      $Wing=newStudent;

      $Wing->Input(“Wing”,”男”,33,95,87);

      $Paladin=newStudent;

      $Paladin->Input(“paladin”,”女”,38,58,59.5);

      $Wing->ShowInfo();

      $Paladin->ShowInfo();

      ?>執(zhí)行結(jié)果應(yīng)是這樣的:

      姓名:Wing

      性別:男

      學(xué)號(hào):33

      英語成績:95

      數(shù)學(xué)成績:87

      姓名:Paladin

      性別:女

      學(xué)號(hào):38

      英語成績:58

      數(shù)學(xué)成績:59.5

      PHP現(xiàn)有的版本較以前的版本在對(duì)面向?qū)ο缶幊痰闹С址矫嬗辛撕艽蟮母纳疲С值倪不是很完整,不過現(xiàn)階段PHP對(duì)面向?qū)ο缶幊陶Z言提供的支持不但有利于我們?cè)O(shè)計(jì)程序的結(jié)構(gòu),對(duì)于對(duì)程序的維護(hù)也能提供很大的幫助。

    【PHP中類的定義】相關(guān)文章:

    PHP中curl的使用實(shí)例04-01

    PHP中的排序函數(shù)區(qū)別分析03-31

    PHP中函數(shù)的使用說明03-30

    預(yù)算中容易混淆的幾個(gè)定義03-20

    php中dirname()和--FILE--常量的用法04-01

    CAD中自定義填充圖案的方法03-03

    JavaScript類定義原型方法的兩種實(shí)現(xiàn)的區(qū)別04-02

    php中static靜態(tài)變量的使用方法03-31

    PHP中date函數(shù)常用時(shí)間處理方法03-31

    主站蜘蛛池模板: 99国产欧美久久久精品蜜芽| 惠民福利中文字幕人妻无码乱精品 | 亚洲av永久无码精品漫画| 久久99精品久久久久久| 人妻少妇乱子伦精品| 欧美日韩综合精品| 国产精品无码免费播放| 99热精品在线| 国产精品国色综合久久| 午夜精品久久久久久99热| 午夜精品久久久久成人| 精品国产污污免费网站入口在线 | 国产一区二区三区精品视频 | 国产精品人人做人人爽人人添| 91精品最新国内在线播放| 精品国产福利一区二区| 青青青国产精品一区二区| 亚洲国产精品SSS在线观看AV | 欧美国产成人精品一区二区三区 | 久久精品蜜芽亚洲国产AV| 最新精品亚洲成a人在线观看| 久久99热这里只有精品国产| 国产精品嫩草影院久久| 99RE8这里有精品热视频| 2024国产精品极品色在线| 国产亚洲美女精品久久久久狼| MM1313亚洲国产精品| 国产精品久久久亚洲| 国产国拍亚洲精品mv在线观看| 精品无码无人网站免费视频| 亚洲国产精品乱码一区二区| 亚洲精品宾馆在线精品酒店| 色婷婷久久久SWAG精品| 日本午夜精品理论片A级APP发布| 欧美日韩精品一区二区视频| 无码国模国产在线无码精品国产自在久国产 | 国产精品久久久天天影视| 97精品国产手机| 老司机国内精品久久久久| 93精91精品国产综合久久香蕉| 91久久精品视频|