An object can belong to several classes. Note that xts objects are inherited from the zoo, so xts objects themselves have several classes.
> class(as.xts(sample_matrix))
[1] "xts" "zoo"
POSIXct - xts. POSIXt - , POSIXct, POSIXlt, .
> s <- Sys.time()
> class(s)
[1] "POSIXct" "POSIXt"
> s - as.POSIXlt(s)
Time difference of 0 secs
POSIXct POSIXlt POSIXt, :
> s - as.Date(s)
[1] "2014-02-26 03:01:54 CST"
Warning message:
Incompatible methods ("-.POSIXt", "-.Date") for "-"
?POSIXt.