Comparison of Programming Languages (object-oriented Programming) - Class Declaration

Class Declaration

class protocol namespace
ABAP Objects class name definition «inheriting from parentclass». «interfaces: interfaces.» method_and_field_declarations endclass.
class name implementation. method_implementations endclass.
interface name. members endinterface.
C++ (STL) class name« : public parentclasses» { members }; namespace name { members }
C# class name« : «parentclass»«, interfaces»» { members } interface name« : parentinterfaces» { members }
D module name;
members
Java class name« extends parentclass»« implements interfaces» { members } interface name« extends parentinterfaces» { members } package name; members
PHP namespace name; members
Objective-C @interface name« : parentclass»«< protocols >» { instance_fields } method_and_property_declarations @end
@implementation
name method_implementations @end
@protocol name«< parentprotocols >» members @end
Python class name«(parentclasses)»:
Tab ↹
members
__all__ =
Visual Basic .NET Class name« Inherits parentclass»« Implements interfaces»
members
End Class
Interface name« Inherits parentinterfaces»
members
End Interface
Namespace name
members
End Namespace
Eiffel class name« inherit parentclasses»
members
end
Perl package name; «@ISA = qw(parentclasses);» members 1; package name; members
Perl 6 class name «is parentclass «is parentclass ...»» «does role «does role ...»» { members } role name «does role «does role ...»» { members } module name { members }
Ruby class name« < parentclass»
members
end
module name
members
end
Windows PowerShell
OCaml class name «parameters» = object «(self)» «inherit parentclass «parameters» «inherit parentclass «parameters» ...»» members end module name
members
F# type name«(parameters)» «as this» = class «inherit parentclass«(parameters)» «as base»» members «interface interface with implementation «interface interface with implementation ...»» end type name = interface members end namespace name
members
Smalltalk "The class is an Object.
Just send a message to the superclass (st-80) or the destination namespace (Visualworks)"
"The namespace is an Object.
Just send a message to the parent namespace"

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

Famous quotes containing the words class and/or declaration:

    “For my own part, I had rather suffer any inconvenience from having to work occasionally in chambers and kitchen ... than witness the subservience in which the menial class is held in Europe.”
    —Harriet Martineau (1802–1876)

    “[The Declaration of Independence] meant to set up a standard maxim for free society, which should be familiar to all, and revered by all; constantly looked to, constantly labored for, and even though never perfectly attained, constantly approximated, and thereby constantly spreading and deepening its influence, and augmenting the happiness and value of life to all people of all colors everywhere.”
    —Abraham Lincoln (1809–1865)