全權名稱(Fully Qualified Name)是介面成員在型別系統中的唯一標識,格式嚴格規範:
// 介面在全域命名空間
IControl.Paint
// 介面在命名空間內
System.ICloneable.Clone
// 巢狀介面
OuterNamespace.InnerInterface.Method
.this)
interface IControl { void Paint(); }
interface ITextBox : IControl { void SetText(string); }
// 合法
IControl.Paint
ITextBox.SetText
ITextBox.Paint // 繼承自 IControl,屬於 ITextBox 成員集合
// 非法
ITextBox.Paint() // 括號不屬於名稱一部分
IControl.SetText // IControl 未宣告 SetText
System.IControl.Paint // 若 IControl 不在 System 命名空間
組件元資料中儲存完整全權名稱。反射 API Type.GetMethod("System.ICloneable.Clone")、MemberInfo.MetadataToken 均依賴此標準化路徑。強名稱組件載入時,執行階段以 AssemblyQualifiedName(含組件名、版本、公開金鑰)進一步唯一識別。
$type 欄位)type.GetInterface("ICloneable").GetMethod("Clone")掌握全權名稱規範,是進行進階反射、序列化、程式碼生成、跨組件協作開發的基礎素養。