Class

A class is a blueprint for objects and defines a type with fields and methods.

Related concepts:  ObjectFieldMethodMemberTypePrototype

Closest Wikipedia entry:  Class (computer programming)

Authoritative Definition

Wikipedia does not necessarily offer the best fitting definition of a concept. The exact meaning we attribute to the concept of Class is based on principled authoritative sources such as:

Misconceptions about Class
27 documented Misconceptions

Check Yourself
Misconception
AbstractClassMustImplementAbstractMethod — Java
An abstract class must implement all abstract methods defined in its superclass
Misconception
AbstractClassNoImplementation — Java
An abstract class cannot contain implemented methods
Misconception
AddMemberAtRuntime — Java
Set of class members can change at runtime
Misconception
AllClassesHaveDefaultConstructor — Java
All classes automatically get a no-argument constructor
Misconception
AnyClassException — Java
Any class can be an exception class
Misconception
ArrayListIsArray — Java
ArrayLists are arrays
Misconception
CallNotStaticallyChecked — Java
A method invocation on a reference of a type that does not have that method won't compile
Misconception
ConcreteClassMustOverride — Java
A concrete class needs to implement all abstract methods and override all concrete methods declared in its abstract superclasses
Misconception
ConcreteClassOnlyImplementClassAbstract — Java
A concrete class only needs to implement those abstract methods it inherits from abstract superclasses
Misconception
ConcreteClassOnlyImplementDirectAbstract — Java
A concrete class only needs to implement abstract methods declared in its direct supertypes
Misconception
ConcreteClassOnlyImplementInterfaceAbstract — Java
A concrete class only needs to implement those abstract methods it inherits from interfaces
Misconception
ImmutableRequiresFinalParameters — Java
Immutable classes need final constructor/method parameters
Misconception
ImplicitInterfaceImplementation — Java
Java implicitly produces implementations of any methods a class inherits from the interfaces it implements
Misconception
InterfaceExtendClass — Java
An interface can extend a class
Misconception
MethodAsField — Java
Each object contains its own special fields for all of its methods
Misconception
MethodsWithoutClass — Java
Methods can be defined outside a class
Misconception
MultipleSuperclasses — Java
A class can have multiple superclasses
Misconception
NestedObjectsImplyNestedClasses — Java
If objects are part of a containment hierarchy, their classes are nested, too
Misconception
NoFieldInheritance — Java
An object contains only the fields declared in its class
Misconception
NoMethodInheritance — Java
Subclasses inherit fields but not methods
Misconception
PrivateFieldsImplyImmutability — Java
A class where all fields are private is immutable
Misconception
ReferringToRecursiveStructureMakesRecursive — Java
A class referring to a recursive data structure is (indirectly) part of that recursion as well
Misconception
SuperclassObjectAllocated — Java
When instantiating an object of a subclass, an object of a superclass is also allocated
Misconception
UnqualifiedNamesMustDiffer — Java
The unqualified names of different classes must be different
Misconception
UseOfSelfTypeImpliesRecursiveType — Java
If a class has a method that has a local variable, parameter, or return value with the class as its type, the class is a recursive type
Misconception
ClassDefinesType — JavaScript
The type of an object is equivalent to the type defined by its class definition
Misconception
PrototypesAreClasses — JavaScript
JavaScript is based on a class-based object model