||A set of functions that can work together to accomplish a task.
It can contain or manipulate data, but it usually does so according to a
pattern rather than a specific implementation. An instance of a class is
considered an object. Until an object is instantiated from a class, the
class can’t actually do anything.
||Using the compiler to translate human-readable code (Java code) into machine-readable language (machine code)
If a class forces access through methods only, this is a strong form of abstraction or information hiding known as encapsulation.
Java lets classes enforce access restrictions explicitly, using access modifier keywords like private.
Encapsulation is useful because it prevents the external code from being concerned with the internal workings of an object,
facilitating code refactoring.
Encapsulating all the code that is concerned with a certain set of data in the same class organizes it for easy
comprehension by other programmers.
Encapsulation is often used as a technique for encouraging decoupling .
||A default set of data stored in a class. A class can have multiple properties and can be changed dynamically through the methods of the class. These are sometimes called attributes.
||One of the keys that make OOP tick. Simply put, classes can inherit methods and fields
from other classes by extending them and each class can be extended by multiple classes. This means that
you can start with a base (or parent) class that contains shared characteristics among several classes. That
base class can then be extended by other classes (children) that are similar but are meant for slightly
different purposes. Any changes in the parent class will automatically cascade to its children.
||A function that is encased in a class. It usually entails an action.
||One instance of a class. It receives all of the characteristics of a class, including all of its default data and any actions that can
be performed by its functions. The object is for use with specific data or to accomplish particular tasks.
||A variable that is passed into a function that instructs it how to act or gives it information to
process. Parameters are also sometimes called arguments.
||The provision of a single interface to entities of different types. A polymorphic type is a type whose
operations can also be applied to values of some other type, or types. In object oriented programming
we use 'subtyping' polymorphism, wherein a name may denote instances of many different classes as long as
they are related by some common superclass.