On 26.02.2010 19:04, Joris Meys wrote:
Dear all,

I'm trying to understand the S4 way of object-oriented programming, but I
still can't grasp completely what R is doing. I have a class definition for
a class called PM10Meteo, and I set a initializer function. next, I include
a show method and a print method as shown below.

setClass( Class="PM10Meteo",...) # end setClass

setMethod ("initialize",signature="PM10Meteo",...) # end setMethod

########
# Show Method
#
setMethod("show","PM10Meteo",
   function(object){
...
   } # end function
) # end show method

#######
# Print Method
#

setMethod("print","PM10Meteo",
   function(x,n=400,station=F,values=T,meteo=T,...){
...
   }
) # end print method


print is not a S4 generic. show methods are mapped to print for convenience, though.

Uwe Ligges



Now when I run the complete class definition file, neither the method
"initialize" nor the method "show" occur in the list given by ls(). On the
other hand, the method "print" does! So when I use rm(list=ls()) I still
have the "initialize" and "show" method, but the "print" method is gone. Am
I forgetting something somewhere? It's rather inconvenient to have to run
the definition files every time I want to clear the memory.

Cheers
Joris

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to