representation
位於 methods
包(package)。 說明
這些是要構造的舊實用函數,分別是設計用於表示插槽和超類的列表以及原型規範列表。 representation()
函數不再有用,因為現在建議使用參數 slots
和 contains
到 setClass
。
prototype()
函數仍可用於相應的參數,但相同參數的簡單列表也可以使用。
用法
representation(...)
prototype(...)
參數
... |
對表示的調用采用單字符串參數。未命名參數是新定義的類擴展的類;命名參數命名新類中的顯式槽,並指定每個槽應具有哪個類。 在對 |
細節
representation
函數對參數的有效性進行測試。每個都必須指定類的名稱。
調用 representation
時,指定的類不必存在,但如果存在,則該函數將檢查每個繼承類引入的任何重複槽名稱。
prototype
的參數通常被命名為槽的初始值,加上給出對象本身的可選第一個參數。如果定義有數據部分,則未命名參數通常很有用(請參見下麵的示例)。
值
representation
的值隻是經過有效性檢查後的參數列表。
prototype
的值是要用作原型的對象。槽位將與參數一致地設置,但構造不使用類定義來測試內容的有效性(這幾乎不能,因為通常提供原型對象來創建定義)。
例子
## representation for a new class with a directly define slot "smooth"
## which should be a "numeric" object, and extending class "track"
representation("track", smooth ="numeric")
### >>> This *is* old syntax -- use 'contains=*, slots=*' instead <<<
### ========== ---------- ------ ======
setClass("Character",representation("character"))
setClass("TypedCharacter",representation("Character",type="character"),
prototype(character(0),type="plain"))
ttt <- new("TypedCharacter", "foo", type = "character")
setClass("num1", representation(comment = "character"),
contains = "numeric",
prototype = prototype(pi, comment = "Start with pi"))
參考
Chambers, John M. (2008) Software for Data Analysis: Programming with R Springer. (For the R version.)
Chambers, John M. (1998) Programming with Data Springer (For the original S4 version.)
也可以看看
相關用法
- R removeMethod 刪除方法
- R as 強製對象屬於某個類
- R language-class 表示未評估語言對象的類
- R className 類名包含對應的包
- R BasicClasses 基本數據類型對應的類
- R callGeneric 從方法調用當前通用函數
- R findClass 查找類定義
- R setOldClass 注冊舊式 (S3) 類和繼承
- R ReferenceClasses 具有按引用處理的字段的對象(OOP 樣式)
- R MethodsList 方法列表對象
- R setGroupGeneric 創建函數的組通用版本
- R StructureClasses 基本結構對應的類
- R showMethods 顯示指定函數或類的所有方法
- R getMethod 獲取或測試方法的定義
- R slot 正式類對象中的槽
- R S4groupGeneric S4組通用函數
- R methodUtilities 用於方法和 S-Plus 兼容性的實用函數
- R getClass 獲取類定義
- R evalSource 使用源文件中的函數定義,無需重新安裝包
- R is 對象是來自類嗎?
- R isSealedMethod 檢查密封方法或類
- R cbind2 按列或行組合兩個對象
- R GenericFunctions 管理通用函數的工具
- R dotsMethods 在方法簽名中使用...
- R S3Part 包含 S3 類的 S4 類
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Construct a Representation or a Prototype for a Class Definition。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。