Java Reference
In-Depth Information
Java SE 7
2011
New file I/O capabilities; support for new network protocols
Java SE 8
2014
Lambda expressions; new date and time API
Java SE 9
2016
(expected)
Money and currency API
features of Java
The key characteristics of the Java programming language that have made it so popular include the
following:
Simple: Java omits some of the vaguely defined features of C++. It has facilities for
automatic garbage collection to automatically release unused memory while a program
is running. It also includes a rich predefined set of packages (such as for mathematics,
statistics, database access, GUI design, and so on) that can be easily reused by application
developers. Its syntax looks very similar to C/C++, making it easy for experienced pro-
grammers to learn and use.
Platform independent and portable: By using a hybrid compilation/interpretation approach,
Java programs can be executed in a networked environment with different hardware plat-
forms and architectures. This also makes Java applications extremely portable, effectively
realizing the “write once, run everywhere” philosophy.
Object-oriented: Java implements the object-oriented programming paradigm by grouping
data and operations into classes and/or objects.
Secure: Java has many facilities to guarantee security in a networked environment. It
imposes various types of access restrictions to (networked) resources and carefully super-
vises memory allocation. It allows code to be downloaded over a network and executed
safely in the confined spaces of memory. It also foresees extensive capabilities for configur-
ing security levels.
Multi-threaded: Java delivers the power of advanced multi-threaded capabilities to the devel-
oper in an environment without complexity. More specifically, Java code can be run concur-
rently as multiple threads in a process, in order to improve its execution performance.
Dynamic: Java allows code to be added to libraries dynamically and then can determine
which code should run at execution time. It also foresees a strict separation between interface
and implementation.
The remainder of this topic explores each of these features in much greater detail.
looKing under the hood
In this section, we will take a look under the hood of Java. We will discuss Java bytecode, the Java
Runtime Environment (JRE), and Java platforms and applications.
 
Search WWH ::




Custom Search