It is a Cloud-based Object Oriented Programming Language, which Doesn’t requires any pre-installation.

By using Apex Programming we can implement the “Customized Business Logic according to the application requirement”.

In Apex Programming, each business logic should be get resides in the form of “Classes and Objects”.

By using Apex Programming, we can build Custom Validation Rules, Complex Business Logics, and Complex Transactional Flows.

Apex Programming is comes under “Programmatic Customizations”.

Apex is not a Case-Sensitive Programming.

In Apex Programming, each Statement Should be ends with a “Semi-Colon”.

Apex is tightly integrated with the Salesforce Object, Which allows us to perform all the DML operations on one or more records in the object.
(Ex: INSERT, UPDATE, DELETE, UNDELETE, UPSERT, MERGE)

By using Apex Programming, we can fetch one or more records from the one or more objects based on the need with the help of “SOQL Queries”.
(SOQL –> Salesforce Object Query Language)

By using Apex Programming, we can search for the required content in multiple objects at a time with the help of a Search Engine called as “SOSL”.
(SOSL –> Salesforce Object Search Language)

By using Apex Programming, we can integrate the salesforce applications with any external system with the help of “REST API / SOAP API”.
(REST –> Representational State Transfer)
(SOAP –> Simple Object Access Protocol)
(API –> Application Programming Interface)

Each Apex Program should be compiled by using the “Apex Compiler”, and should be executed with the help of a Runtime Engine called as “Apex Runtime”.

Note:
All the Compiled Apex Classes information will get resides inside the “Metadata Repository” and a Copy of the class code will get resides inside the “ApexClass” object.

Each Apex Class File should be stored with the extension ".apxc".