Class Methods
Class methods are methods that are called on a class (compare this to class instance methods, or object methods). Its meaning may vary depending on the programming language:
- In some languages (e.g. C++, Java), class methods are synonymous with static methods (see section below), which are called with a known class name at compile-time.
this
cannot be used in static methods. - In some other languages (e.g. Smalltalk, Ruby, Objective-C), class methods are methods that are called on a class object, which can be computed at runtime, there being no difference between calling a method on a regular object or a class object; thus both instance and class methods are resolved dynamically, and there are no "static" methods. Notably, in these class methods,
this
refers to the class object. - Some languages have both. For example, in Python, one can create class methods and static methods using the
classmethod
andstaticmethod
decorators, respectively. The former has access tothis
(i.e. the instance object, conventionally known asself
), while the latter does not.
Read more about this topic: Method (computer Science)
Famous quotes containing the words class and/or methods:
“By bourgeoisie is meant the class of modern capitalists, owners of the means of social production and employers of wage labor. By proletariat, the class of modern wage laborers who, having no means of production of their own, are reduced to selling their labor power in order to live.”
—Friedrich Engels (18201895)
“The comparison between Coleridge and Johnson is obvious in so far as each held sway chiefly by the power of his tongue. The difference between their methods is so marked that it is tempting, but also unnecessary, to judge one to be inferior to the other. Johnson was robust, combative, and concrete; Coleridge was the opposite. The contrast was perhaps in his mind when he said of Johnson: his bow-wow manner must have had a good deal to do with the effect produced.”
—Virginia Woolf (18821941)