類這樣

一個拓展類

在不修改ClassTimor類基礎上,添加一個方法,使用了拓展方法,這沒錯

看出來也成功了。
但是我想給ClssTimor ,加上一個靜態方法StaticMethod2。
而不是只有一個StaticMethod一個靜態方法。

在不修改ClassTimor的基礎上,該如何增加
uj5u.com熱心網友回復:
類本身是不能增加方法/靜態方法的擴展方法其實是在其他靜態類中寫靜態方法,然后通過語法糖的形式可以由原來的類的實體呼叫
并沒有擴展靜態方法這一說
uj5u.com熱心網友回復:
擴展一個靜態方法。。。這個還沒寫過,擴展方法,都是針對另一個類的物體,模擬的是一個成員方法。如果你實在要一個靜態方法,那么就只能將原來的類給繼承下來,繼承類里面增加一個靜態方法,差不多就是這樣了。
//最基本的一個類,加入這個類是第三方的,無法被修改
public class BaseStatic
{
public static void Method1()
{
}
}
public class ExStatic : BaseStatic
{
//繼承一個類,然后多寫一個靜態方法,倒是沒有問題
public static void Method3()
{
}
}
public static class ThisStatic
{
//擴展一個方法,其中的this BaseStatic,代表的是BaseStatic實體,擴展出來的也是成員方法,必須從物件中呼叫
public static void Method2(this BaseStatic value)
{
}
//這里要擴展一個靜態方法,暫時不知道怎么做到。。應該是沒辦法的。。。
}
class Program
{
static void Main(string[] args)
{
//原有方法
BaseStatic.Method1();
BaseStatic baseStatic = new BaseStatic();
//擴展方法
baseStatic.Method2();
//繼承之后的類,同時有兩個靜態方法
ExStatic.Method1();
ExStatic.Method3();
}
}
uj5u.com熱心網友回復:
靜態方法加不上,建議lz換python、js等動態語言去。uj5u.com熱心網友回復:
就是想給一個類加上 靜態方法,不考慮修改,也改不了,unity的類,也不考慮繼承
這個類確實有很多靜態方法,
但是我想加一條。


該如何做
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/132234.html
標籤:C#
