Comparison of Programming Languages (object-oriented Programming) - Special Methods

Special Methods

String representation Object copy Value equality Object comparison Hash code Object ID
Human-readable Source-compatible
ABAP Objects
C++ (STL) x == y
C# x.ToString x.Clone x.Equals(y) x.CompareTo(y) x.GetHashCode
Java x.toString x.clone x.equals(y) x.compareTo(y) x.hashCode System.identityHashCode(x)
JavaScript x.toString
D x.toString or
std.conv.to!string(x)
x.stringof x == y x.toHash
Objective-C (Cocoa)
Smalltalk x displayString x printString x copy x = y x hash x identityHash
Python str(x) repr(x) copy.copy(x) x == y cmp(x, y) hash(x) id(x)
Visual Basic .NET x.ToString x.Clone x.Equals(y) x.CompareTo(y) x.GetHashCode
Eiffel x.out x.twin x.is_equal(y) When x is COMPARABLE, one can simply do x < y When x is HASHABLE, one can simply do x.hash_code When x is IDENTIFIED, one can simply do x.object_id
PHP sprintf("%s", x) clone x x == y spl_object_hash(x)
Perl "$x" Data::Dumper->Dump(,) Storable::dclone($x) Scalar::Util::refaddr( $x )
Perl 6 ~x x.perl x.clone x eqv y x cmp y x.WHICH
Ruby x.to_s x.inspect x.dup or
x.clone
x == y or
x.eql?(y)
x <=> y x.hash x.object_id
Windows PowerShell x.ToString x.Clone x.Equals(y) x.CompareTo(y) x.GetHashCode
OCaml Oo.copy x x = y Hashtbl.hash x Oo.id x
F# string x or x.ToString or sprintf "%O" x sprintf "%A" x x.Clone x = y or x.Equals(y) compare x y or x.CompareTo(y) hash x or x.GetHashCode

Read more about this topic:  Comparison Of Programming Languages (object-oriented Programming)

Famous quotes containing the words special and/or methods:

    I think those Southern writers [William Faulkner, Carson McCullers] have analyzed very carefully the buildup in the South of a special consciousness brought about by the self- condemnation resulting from slavery, the humiliation following the War Between the States and the hope, sometimes expressed timidly, for redemption.
    Jimmy Carter (James Earl Carter, Jr.)

    All good conversation, manners, and action, come from a spontaneity which forgets usages, and makes the moment great. Nature hates calculators; her methods are saltatory and impulsive.
    Ralph Waldo Emerson (1803–1882)