PHP类中一般方法与静态方法的疑问
<?php /* 产品类 */ class Product{ public static $Count=0; public $Name=''; public function Show(){ print('<p>Show Method</p>'); } public static function Display(){ print('<p>Display Static Method</>'); } } $class = new ReflectionClass('Product'); print "<pre>"; Reflection::export($class); print "</pre>"; Product::Display(); Product::Show();//为什么非静态方法在这里也可以用::的方式访问? ?>
Class [ class Product ] {
@@ D:\WebRoot\static.php 5-16
- Constants [0] {
}
- Static properties [1] {
Property [ public static $Count ]
}
- Static methods [1] {
Method [ static public method Display ] {
@@ D:\WebRoot\static.php 13 - 15
}
}
- Properties [1] {
Property [ public $Name ]
}
- Methods [1] {
Method [ public method Show ] {
@@ D:\WebRoot\static.php 9 - 11
}
}
}
Display Static Method
Show Method
以上是程序执行的结果,Show方法明明是一个一般方法,为什么也可以用Product::Show()访问,程序并不会出错,这样访问和静态方法的访问不是一样吗?要是真是这样,那还要静态方法干吗?请哪位有明白的指点一二。谢谢!!!
申明
非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!
博文欢迎转载,但请给出原文连接。
分类:
PHP & MySql
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
2011-11-29 编程实现双击某个文件用指定程序打开
2008-11-29 META http-equiv 大全
2007-11-29 phpmyadmin管理mysql時報的幾個錯誤解決辦法
2006-11-29 存储过程分页