library(R6)
Person<-R6Class("Person",
public=list(
name=NULL,
age=NULL,
initialize=function(name,age){
self$name<-name
self$age<-age
},
GrowUP1=function(){
self$publicGrow()
},
publicGrow=function(){
self$age<-self$age+1
},
GrowUP2=function(){
self$privateGrow()
}
),
private=list(
privateGrow=function(){
self$age<-self$age+1
}
)
)
Person<-Person$new('Tom',20)
Person$age
Person$GrowUP1()
Person$age
Person$GrowUP2()
这是我的示例代码。
我运行上一个代码Person$GrowUP2()
。
但是,我遇到了错误Error in Person$GrowUP2() : attempt to apply non-function
我不知道为什么这段代码没有运行。我想使用私有方法来修改公共成员。如何
答案 0 :(得分:0)
使用private
调用私有函数:
GrowUP2=function(){
private$privateGrow()
}
Person<-Person$new('Tom',20)
Person$GrowUP1()
Person$GrowUP2()
Person$age
[1] 22