我有一個類的應用程序與靜態和非靜態變量。如何覆蓋靜態變量?
class App{
protected static $appName = 'dummy';
protected $appIcon = 'icon';
public static function getAppName() {
return self::$appName;
}
}
然後我擴展該類這樣
class Notepad extends App{
private static $appName = 'notepad';
private $appIcon = 'notepad_icon';
}
我想APPNAME而無需創建記事本的一個實例。我嘗試了Notepad :: getAppName(),但是這總是返回dummy。
任何想法或建議???
在此先感謝!
J!
謝爾蓋的帖子後:
,我很困惑這是最面向對象的方式做這樣的事情,而最有效的(速度/內存)?
a. declaring variables as puplic
b. creating an instance of an object just to get a few variables
c. rewrite the static function to all the children classes as Sergey suggested
a。將變量聲明爲傀儡 - 效率最高,如果要更改它,則使用statis變量,如果不是,則將const用於代碼。 – Sergey