一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php面向對象中static靜態屬性和靜態方法的調用

php面向對象中static靜態屬性和靜態方法的調用

2020-09-03 14:15php之路 PHP教程

這篇文章主要介紹了php面向對象中static靜態屬性和靜態方法的調用,實例分析了static靜態屬性和靜態方法的原理與調用技巧,需要的朋友可以參考下

本文實例講述了phpstatic靜態屬性靜態方法的調用。分享給大家供大家參考。具體如下:

這里分析了php面向對象中static靜態屬性和靜態方法的調用。關于它們的調用(能不能調用,怎么樣調用),需要弄明白了他們在內存中存放位置,這樣就非常容易理解了。靜態屬性、方法(包括靜態與非靜態)在內存中,只有一個位置(而非靜態屬性,有多少實例化對象,就有多少個屬性)。

實例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
header("content-type:text/html;charset=utf-8");
class Human{
 static public $name = "小妹";
 public $height = 180;
 static public function tell(){
 echo self::$name;//靜態方法調用靜態屬性,使用self關鍵詞
 //echo $this->height;//錯。靜態方法不能調用非靜態屬性
//因為 $this代表實例化對象,而這里是類,不知道 $this 代表哪個對象
 }
 public function say(){
 echo self::$name . "我說話了";
 //普通方法調用靜態屬性,同樣使用self關鍵詞
 echo $this->height;
 }
}
$p1 = new Human();
$p1->say();
$p1->tell();//對象可以訪問靜態方法
echo $p1::$name;//對象訪問靜態屬性。不能這么訪問$p1->name
//因為靜態屬性的內存位置不在對象里
Human::say();//錯。say()方法有$this時出錯;沒有$this時能出結果
//但php5.4以上會提示
?>

結論:

(1)、靜態屬性不需要實例化即可調用。因為靜態屬性存放的位置是在類里,調用方法為"類名::屬性名";
(2)、靜態方法不需要實例化即可調用。同上
(3)、靜態方法不能調用非靜態屬性。因為非靜態屬性需要實例化后,存放在對象里;
(4)、靜態方法可以調用非靜態方法,使用 self 關鍵詞。php里,一個方法被self:: 后,它就自動轉變為靜態方法;

希望本文所述對大家的php程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 99热在这里只有精品 | 五月婷婷在线免费观看 | 热辣小秘书办公室 | 国产精品福利短视在线播放频 | 99精彩免费观看 | 国色天香社区在线视频免费观看 | nxgx欧美| 日韩欧美高清 | 被老外玩爽的中国美女视频 | 国产一级一级片 | 亚洲性网| 99热这里只有精品在线 | 母爱成瘾在线观看 | 国内自拍2019 | 奇米视频7777 | 日产乱码卡1卡2卡三免费 | 欧美成人aa | 久久热在线视频精品1 | 亚洲第五页 | 大吊小说 | 99视频免费| 婷婷天天 | 欧美精品一区二区三区免费观看 | 久久观看视频 | 公园吃女人奶野战视频 | 91对白在线 | 视频在线播放 | 169pp美女| 国产一级一级一级成人毛片 | 亚洲成人免费观看 | 天天狠天天透天干天天怕处 | 美女脱得一二净无内裤全身的照片 | 天天操天天干天天 | 色播艾小青国产专区在线播放 | 小早川怜子亚洲综合中文字幕 | 国产欧美日韩亚洲精品区2345 | 500福利第一巨人导航 | 国产自拍影院 | 91亚洲在线 | 肉宠文很肉到处做1v1 | 日本热妇 |