Level 1: Keywords in Java

Keywords also called as reserved words. Which intern means it’s already defined in Java compiler. Thus cannot be used as normal identifiers. All keywords much be written in lower case.
Below are Java Keywords

abstract double instanceof strictfp
boolean else int super
break enum long switch
byte extends native synchronized
case final new this
catch finally package throw
char float private throws
clase for protected transient
const goto public try
continue if return void
default implements short volatile
do import static while

Java Features

  1. SIMPLE

You will find java easier and simple if you are aware of object-oriented language, especially C++.

  1. Object-Oriented

Java has no global functions. All functions are invoked through an object.

  1. Distributed

Java facilitates the building of distributed applications by a collection of classes for use in networking application. Java can easily access a remote server using java libraries such as URL and support other protocols such as HTTP, FTP, and classes for creating socket-level connections.

  1. Interpreted

Once java interpreter is ported to a specific machine it can run java programs instantly. Also it avoids inter modular dependencies. Time-consuming and edit-compile-link-test cycle is no longer applicable to java. No need to wait for longer compile time. Also java promotes prototyping and easier debugging.

  1. ROBUST

To have a distributed, multithreaded program was not an easy task, thus to support all java was developed in such a way it manages all dynamic memory and checks array bounds and others.

  1. Architecture Neutral

As said before to support platform independent environment, java compiler complies the java source code into architecture-independent object code. The object code is interpreted by JVM on the target architecture.

  1. Portable

Unlike other languages like C and C++ where sizes of primitive types are up to the compiler and developer. Java compiler is itself written in java and the runtime environment is written in POSIX-compliant C. Thus java becomes portable and supporting all different architectures.

  1. Multithreaded

Java has built in multithreading and synchronized thread which helps in creating distributed. Also in networking applications which can access remote server in one thread and interact with user in another thread.

  1. Dynamic

Java is dynamic language. One such example is, Java is capable of performing name resolution while linking in the necessary classes. Java also support placements of objects in memory efficiently. It solves changing the definition if a class used by other classes. Because name lookup and resolution are performed only the first time a name is encountered, only a minimal performance overhead is added.