Java

Computer programming language
Collection
zero Useful+1
zero
Java is an object-oriented programming language, which not only absorbs the advantages of C++language, but also discards the multiple inheritance Pointer Therefore, the Java language has two characteristics: powerful and simple to use. As the representative of static object-oriented programming language, Java language perfectly implements the object-oriented theory and allows programmers to conduct complex programming in an elegant way of thinking. [1]
Java is simple, object-oriented Distributed Robustness Security , platform independence and portability Multithreading , dynamic, etc. [2] Java can write Desktop applications , Web applications distributed system and Embedded system Applications, etc. [3]
Software name
Java
software platform
Windows Mac OS Linux Solaris etc. [4]
Online time
1995 [5]
Last updated
March 22, 2022 [57]
Software language
Java
Developers
U.S.A Oracle
Software Licensing
Oracle License [6]
Software version
Java 20 [59]
Software size
46 to 86 MB
Scope of application
Web development, desktop (mobile, computer) application development, etc [7]

development history

Announce
edit
In the 1990s, a monolithic computer system appeared in the hardware field. This inexpensive system immediately attracted the attention of people in the field of automatic control, because it can greatly improve consumer electronic products (e.g. TV set-top box, bread oven, mobile phone, etc.) Degree of intelligence. In order to seize the market opportunity, Sun Corporation established a project team called Green in 1991. The working team composed of Patrick, James Gosling, Mike Sheridan and several other engineers California A small studio in Dune Road, Menlo Park, specializes in the embedded application of computers in household appliances.
JAVA
Because of the advantages of C++, the researchers of the project team first considered using C++to write programs. But for monolithic systems with extremely scarce hardware resources, C++programs are too complex and huge. In addition, due to the variety of embedded processor chips used in consumer electronic products, how to make the written programs run across platforms is also a problem. In order to solve the difficulties, they first focused on language development, assumed a hardware platform architecture that is simple in structure and meets the needs of embedded applications, and formulated corresponding specifications for it, in which the Binary Machine code instruction system (that is, the instruction system that later became "bytecode") After the language development is successful, semiconductor chip manufacturers can develop and produce this hardware platform. For the design of new language, Sun's R&D personnel did not develop a new language. Instead, according to the requirements of embedded software, they modified C++, removed some impractical and security affecting elements left in C++, and combined with the real-time requirements of embedded systems, developed an object-oriented language called Oak.
Since there was no hardware platform to run bytecode when developing Oak language, in order to carry out experimental research on this language during development, they built a running platform with software on the basis of existing hardware and software platforms and according to their own specified specifications. The whole system is no big difference except that it is simpler than C++. In the summer of 1992, when Oak language was successfully developed, researchers demonstrated Green operating system, Oak's programming language, class library and its hardware to hardware manufacturers to persuade them to use Oak language to produce hardware chips. However, hardware manufacturers did not have great enthusiasm for this. Because they believe that the risk of producing hardware products is too great when everyone knows nothing about Oak language, Oak language can not enter the market due to lack of hardware support, so it is shelved.
In June and July 1994, after a three-day discussion, the team decided to change its goal again. This time, they decided to apply the technology to the World Wide Web. They believe that with the advent of Mosaic browser, the Internet is evolving towards the same highly interactive vision, which they see in cable television networks. As a prototype, Patrick Norton wrote a small World Wide Web browser, WebRunner. [8]
In 1995, the vigorous development of the Internet gave Oak a chance. In order to make rigid and monotonous static web pages "flexible", the industry needs a software technology to develop a program that can be spread through the network and run across platforms. So, the world IT Enterprises have invested a lot of human, material and financial resources in this regard. At this time, Sun remembered Oak, which had been shelved for a long time, and reviewed the test platform written in software. Because it was written according to the embedded system hardware platform architecture, it was very small, especially suitable for transmission systems on the network. Oak is also a compact language, and the program is very small, suitable for transmission on the network. Sun Corporation first launched an applet that can be embedded in web pages and can be transmitted on the network with web pages (Applet is a technology that embeds applets in web pages for execution) , and renamed Oak Java. On May 23, Sun officially released Java and HotJava browsers at the Sun world conference. IBM Apple 、DEC、Adobe、HP、 Oracle , Netscape, Microsoft and other major companies have stopped their related development projects, purchased Java use licenses and developed corresponding Java platforms for their products. [9-10]
In January 1996, Sun Corporation released the first Java development kit (JDK 1.0) This is an important milestone in the development of Java, marking that Java has become an independent development tool. In September, about 83000 web pages were created using Java technology. In October, Sun Corporation released the first real-time (JIT) compiler.
In February 1997, JDK 1.1 was launched, and in the following three weeks, it reached 220000 downloads. On April 2, the Java One Conference was held, with more than 10000 participants, a record for the size of similar conferences in the world at that time. In September, the Java Developer Connection community members exceeded 100000.
On December 8, 1998, the enterprise version J2EE of the second generation Java platform was released. In June 1999, Sun Corporation released three versions of the second generation Java platform (referred to as Java 2 for short): J2ME (Java 2 Micro Edition, the micro version of Java 2 platform) for mobile, wireless and limited resource environments; J2SE (Java 2 Standard Edition, the standard version of the Java 2 platform), applied to the desktop environment; J2EE (Java 2 Enterprise Edition, Enterprise Edition of Java 2 Platform) is applied to Java based application servers. The release of the Java 2 platform is the most important milestone in the development of Java, marking the beginning of the popularity of Java applications.
On April 27, 1999, the HotSpot virtual machine was released. The HotSpot virtual machine was provided as an add-on to JDK 1.2 when it was released. Later, it became the default virtual machine of all Sun JDK versions of JDK 1.3 and later. [11]
In May 2000, JDK1.3, JDK1.4 and J2SE1.3 were released successively, and a few weeks later, they obtained Apple Industry standard support for the company's Mac OS X. On September 24, 2001, J2EE 1.3 was released. J2SE1.4 was released on February 26, 2002. Since then, Java's computing power has been greatly improved. Compared with J2SE 1.3, Java has nearly 62% more classes and interfaces. Among these new features, it also provides extensive XML support, secure sockets (Socket) support (via SSL and TLS protocols) , new I/OAPI, regular expressions, logs and assertions. On September 30, 2004, J2SE 1.5 was released, becoming another milestone in the history of Java language development. To indicate the importance of this version, J2SE 1.5 is renamed Java SE 5.0 (Build 1.5.0) , code named "Tiger", Tiger contains the most significant update since version 1.0 was released in 1996, including generic support, automatic boxing of basic types, improved loops, enumeration types, formatted I/O and variable parameters.
One of the founders of Java: James Gosling
In June 2005, at the Java One conference, Sun released Java SE 6. At this time, various versions of Java have been renamed, and the number 2 has been canceled. For example, J2EE has been renamed as Java EE, J2SE has been renamed as Java SE, and J2ME has been renamed as Java ME. [12]
On November 13, 2006, Sun Corporation, the inventor of Java technology, announced that it would release Java technology as free software. The first batch of source code of the standard version of the Java platform and the executable source code of the Java mini version officially released by Sun Corporation. Since March 2007, all developers around the world can modify Java source code. [13]
In 2009, Oracle announced the acquisition of Sun. [14]
In 2010, James Gosling, one of the co founders of the Java programming language, resigned from Oracle. In 2011, Oracle held a global event to celebrate the launch of Java 7, followed by the official release of Java 7.
In 2014, Oracle released the official version of Java 8. [15]
On September 22, 2017, Java 9 was officially released, bringing many new features, the most important of which is the realized modular system. [56]
On March 20, 2024, Oracle officially released Java 22. Java 22 (Oracle JDK 22) has made thousands of improvements in performance, stability and security, including the enhancement of the Java language, its API and performance, and the tools in the Java Development Kit (JDK) to help developers improve their work efficiency. [60]

Programming development

Announce
edit

Programming environment

JDK (Java Development Kit) It is called Java development kit or Java development tool, and it is a program development environment for writing Java applet and application programs. JDK is the core of the whole Java, including the Java running environment (Java Runtime Environment) , some Java tools and Java core class libraries (Java API) No matter what Java application server is, it has a built-in version of JDK. The mainstream JDK is the JDK released by Sun. In addition to Sun, many companies and organizations have developed their own JDKs, such as the JDK developed by IBM, the JRocket developed by BEA, and the JDK developed by GNU. [17]
Java Concept Map [16]
In addition, the Java SE API subset and the Java Virtual Machine in the Java API class library can be collectively referred to as JRE (Java Runtime Environment) JRE is a standard environment that supports the running of Java programs. [18]
JRE is a running environment and JDK is a development environment. Therefore, JDK is required when writing Java programs, and JRE is required when running Java programs. The JDK already contains JRE, so you can edit Java programs and run Java programs normally as long as you install the JDK. However, because JDK contains a lot of content unrelated to running, it takes up a large space, so running ordinary Java programs does not need to install JDK, but only JRE. [19]

Programming tools

Eclipse : An open source, Java based, extensible development platform. [20]
NetBeans: Open source Java integrated development environment, suitable for various clients and Web applications.
IntelliJ IDEA: It has good functions in automatic code prompt, code analysis, etc. [21]
MyEclipse: A commercial software developed by Genuitec, it is a widely used integrated development environment for Java applications. [22]
EditPlus: If the Java compiler "Javac" and interpreter "Java" are configured correctly, you can directly use EditPlus to compile and execute Java programs. [23]

Language characteristics

Announce
edit

Simplicity

Java looks like C++, but in order to make the language small and easy to understand, designers have removed many features available in the C++language, which are rarely used by ordinary programmers. For example, Java does not support goto Statement , instead provide break and continue Statement and exception handling. Java also eliminates operator overload of C++ overload And multiple inheritance features, and does not use the main file, eliminating the preprocessing program. Because Java has no structure and arrays and strings are objects, pointers are not required. Java can automatically handle the reference and indirect reference of objects, realize automatic collection of useless units, so that users do not have to worry about storage management problems, and can spend more time and energy on research and development.

object-oriented

Java is an object-oriented language. For programmers, this means paying attention to the data and methods of manipulating data (method) , rather than thinking strictly in terms of process. In an object-oriented system, classes class Is a collection of data and methods for manipulating data. Data and methods describe objects together (object) The state and behavior of. Each object is an encapsulation of its state and behavior. Classes are arranged according to a certain system and hierarchy, so that subclasses can inherit behaviors from superclasses. In this class hierarchy, there is a root class, which is a class with general behavior. Java programs are organized by classes.
Java also includes an extension set of classes to form various packages Package , users can use it in their own programs. For example, Java provides classes that produce graphical user interface components (java. awt package) , where awt is the abstract window tool set (abstract windowing toolkit) Abbreviation for, a class that handles input and output (java. io package) And classes that support network functions (java. net package)

Distribution

Java is designed to support applications on the network. It is a distributed language. Java not only supports network connections at various levels, but also supports reliable streams with Socket classes (stream) Network connection, so users can generate distributed clients and servers.
The network becomes a distributed vehicle for software applications. Java programs can be run everywhere as long as they are written once.

Compilation and interpretability

Java compiler generates bytecode (byte-code) Instead of the usual machine code. Java bytecode provides an architecture neutral object file format, and the code is designed to effectively transfer programs to multiple platforms. Java program can implement Java interpreter and running system in any (run-time system) On the system.
In an interpretive environment, the standard "linking" phase of program development has largely disappeared. If Java has a link stage, it is just the process of loading new classes into the environment. It is incremental Lightweight Process. Therefore, Java supports rapid prototyping and easy testing, which will lead to rapid program development. This is a sophisticated development process in sharp contrast to the traditional, time-consuming "compile, link and test" process.

robustness

Java was originally used as a language for writing consumer electronics software, so it was designed to write highly reliable and robust software. Java eliminates some programming errors, making it relatively easy to write reliable software.
Java
Java is a strongly typed language that allows you to extend the ability to check for potential type mismatches at compile time. Java requires explicit method declarations, and it does not support C-style implicit declarations. These strict requirements ensure that the compiler can catch call errors, which leads to more reliable programs.
One of the most important enhancements to reliability is the Java storage model. Java does not support pointers, which eliminates the possibility of overwriting storage and corrupting data. Similarly, Java's automatic "garbage collection" prevents storage leaks and other harmful errors related to dynamic storage allocation and deallocation. The Java interpreter also performs many runtime checks, such as verifying that all array and string accesses are within bounds.
Exception handling is another feature in Java that makes programs more robust. An exception is a signal that an exception condition similar to an error occurs. Using the try/catch/finally statement, programmers can find the error handling code, which simplifies the task of error handling and recovery.

Security

Java's storage allocation model is one of its main methods to prevent malicious code. Java has no pointers, so programmers cannot get hidden secrets and forge pointers to point to memory. More importantly, the Java compiler does not process storage arrangement decisions, so programmers cannot view statement Guess the actual storage arrangement of the class. The actual storage address of the storage reference in the compiled Java code is determined by the Java interpreter at runtime.
The Java operating system uses the bytecode verification process to ensure that the code loaded on the network does not violate any Java language restrictions. This security mechanism part includes how to load classes from the network. For example, the loaded classes are placed in separate namespaces instead of local classes to prevent malicious small applications from replacing standard Java classes with their own versions.

Portability

Java makes language declarations independent of implementation aspects. For example, Java explicitly states the size of each basic data type and its operation behavior (These data types are described by Java syntax)
The Java environment itself is portable to new hardware platforms and operating systems. The Java compiler is also written in Java, and the Java running system is written in ANSI C.

High performance

Java is a language that first compiles and then interprets, so it is not as fast as a fully compiled language. However, in some cases, performance is very important. In order to support these situations, Java designers have created "just in time" compilers that can translate Java bytecode into specific ones at runtime CPU (CPU) That is to say, complete compilation is achieved.
The design of Java bytecode format takes into account the needs of these "just in time" compilers, so the process of generating machine code is quite simple, and it can produce quite good code.

Multithreading

Java is a multithreaded language, which supports multithreaded execution (also known as a lightweight process) , can handle different tasks, making program design with clues easy. Java's lang package provides a Thread Class, which supports methods for starting a clue, running a clue, stopping a clue, and checking the state of a clue.
Java thread support also includes a set of synchronization primitives. These primitives are based on the supervision procedure and the style of conditional variables, and are written by C A. The widely used synchronization scheme developed by R. Haore. Use keywords synchronized , programmers can explain that some methods cannot run concurrently in a class. These methods are under the control of supervision procedures to ensure that variables are maintained in a consistent state.

Dynamic

The Java language is designed to adapt to changing environments. It is a dynamic language. For example, classes in Java are loaded as needed, and some are even obtained through the network. [24]

working principle

Announce
edit
It is composed of four aspects:
working principle
(1) Java programming language
(2) Java class file format
(3) Java Virtual Machine
(4) Java Application Program Interface [25]
When editing and running a Java program, these four aspects need to be involved at the same time. Using text editing software (e.g Notepad , Wordpad, UltraEdit, etc.) Or integrated development environment Eclipse , MyEclipse, etc.) Define different classes in Java source files by calling classes (These classes implement the Java API) To access the resource system, compile the source file to generate a binary intermediate code, store it in the class file, and then run the class file by running the Java virtual machine corresponding to the operating system platform environment, execute the compiled bytecode, and call the method implemented in the class file to meet the Java API call of the program. [26]

Fundamentals of Language

Announce
edit

Basic data structure

In Java, there are eight data types to store numeric values, characters, and Boolean values.
Integer type
Integer is used to store integer values, that is, values without decimal parts. It can be positive or negative. Integer data can be expressed in three forms in Java programs, namely decimal, octal and hexadecimal.
Integer data can be divided into four types according to the size of its content.
data type
Memory
byte
8 bits
short
16 bit
int
32-bit
long
64 bit
Floating point type
data type
Memory
float
32-bit
double
64 bit
Character type
The character type is used to store a single character, occupying 16 bits (two bytes) of memory space. When defining character variables, they should be expressed in single quotation marks. use char Keyword defines character variables.
data type
Memory
char
16 bit
Boolean type
Boolean type is also called logical type boolean To define Boolean variables, there are only two values: true and false, representing "true" and "false" in Boolean logic. Boolean types are often used as judgment conditions in process control.

keyword

keyword
meaning
abstract
Abstract class or method
assert
Used to find internal program errors
break
Jump out of a switch or loop
byte
8-bit integer type
case
A branch of switch
catch
Try block clause for catching exceptions
class
Define a class type
continue
Continue at the end of the loop
default
Default statement of switch
do
The first statement of the do/while loop
double
Double precision floating point number type
else
Else clause of if statement
enum
Enumeration type
extends
Define the parent class of a class
final
A constant, or a class or method that cannot be overridden
finally
The part of the try block that will always be executed
float
Single precision floating point number type
for
One cycle type
if
A conditional statement
implements
Define an interface implemented by a class
import
Import a package
instanceof
Test whether an object is an instance of a class
int
32-bit integer
interface
Interface, an abstract type, only defines methods and constants
long
64 bit long integer
native
A method implemented by the host system
new
Assign a new class instance
null
An empty reference
package
A package containing classes
private
Represents private fields or methods, which can only be accessed from inside the class
protected
Indicates the protection type field
public
Represents a common property or method
return
Return from a method
short
16 bit integer type
static
This feature is unique to this class, but does not belong to objects of this class
strictfp
Use strict rules for floating point calculation
super
Superclass object or constructor
switch
Select statement
synchronized
Method or code block that is atomic to thread
this
Implied parameter of a method or constructor of the current class
throw
Throw an exception
throws
An exception that may be thrown by a method
transient
Mark non permanent data
try
Code block for catching exceptions
void
Tag method does not return any value
volatile
Mark fields may be accessed by multiple threads at the same time without synchronization
while
A cycle
Keyword Reference Source [27]

operator

Operators are special symbols that are mainly used in mathematical functions, some types of assignment statements, and logical comparisons.
Assignment Operators
The assignment operator is represented by the symbol "=", which is a binary operator (processing two operands). Its function is to assign the value contained in the right operand to the left operand.
For example:
int a = 100;
Arithmetic operator
operator
explain
+
plus
-
reduce
*
ride
/
except
%
Remainder
Self increasing and self decreasing operators
Self increasing and self decreasing are unary operators, which can be placed before or after operands. The operand must be an integer or floating point variable. The auto increment and auto decrement operators are used to increase or decrease the value of a variable by 1. The self increasing and self decreasing operators placed in front of the operands will first add or subtract 1 from the value of the variable, and then make the variable participate in the operation of the expression. The self increasing and self decreasing operators placed after the operands will first make the variable participate in the expression operation, and then add or subtract 1 from the value of the variable.
For example:
Assume a=5
B=++a;//First add 1 to the value of a, and then assign a value to b, where a is 6 and b is 6 B=a++;//First assign the value of a to b, and then change the value of a to 6, where a is 6 and b is 5
Comparison operator
The comparison operator is a binary operator, which is used to compare variables in the program, variables and independent variables, and other types of information. The result of the comparison operator is boolean. When the relationship corresponding to the operator is true, the result of the operation is true , otherwise, it is false. There are 6 comparison operators, which are usually used as the basis for judgment in conditional statements.
operator
explain
>
Compare whether the left side is larger than the right side
<
Compare whether the left side is smaller than the right side
==
Compare whether the left side is equal to the right side
> =
Compare whether the left side is greater than or equal to the right side
<=
Compare whether the left side is less than or equal to the right side
!=
Compare whether the left side is not equal to the right side
Logical operator
operator
effect
&&
Logical and
||
Logical OR
Logical negation
Reference source of basic language [28]

Program example

/*A simple Java application that displays the content: Hello World! The file name is Hello.java*/ class Hello{ //Program starts at main()   public static void main(String args[]){     System.out.println("Hello World!");          }  }
The main method, as the comment says, is the first line of program execution. For a Java application, the main method is necessary. The Java interpreter uses main as the entry to execute the program without generating any objects. Multiple methods can be defined in each class, but only one main method can be defined. The public keyword indicates access permission, indicating that all classes can use this method. In this example, main must be defined as public type, because it needs to be called by code outside its class when the program starts executing. The static keyword indicates that the method is a class method. The void keyword indicates that the main() method does not return any value. The String args [] defined in the parentheses of the main method is the parameter passed to the main method. The parameter name is args, and it is a class String An object of. The parameters of the method are specified by "class name parameter name", and multiple parameters are separated by commas. The last character of this line is "{", which represents the beginning of the main program body. All the code contained in a method will be included in the middle of the curly braces. In addition, main is only the place where the interpreter starts to work. A complex program may contain dozens of classes, but these classes only need one main method. [29]

Language standards

Announce
edit
International Organization for Standardization, 17 November 1997 (ISO) Agree to adopt Sun's patented technology Java as the ISO standard. Java is used by the public free of charge as a technical standard. According to the approval of ISO, Sun Corporation will be able to submit the standardized platform specification of Java. [30]
Release time
name
November 15, 2000
ISO/TS 10303-27:2000
May 15, 2006
ISO/IEC 19777-2:2006
July 15, 2014
ISO/IEC TR 13066-6:2014
August 15, 2015
ISO 20210:2015
March 15, 2016
ISO/IEC 30106-2:2016
Language Standards Reference [31-35]

language norm

Announce
edit
JCP (Java Community Process) It is an open international organization, mainly composed of Java developers and licensees, whose function is to develop and update Java technical specifications and reference implementations (RI) Technical compatibility package (TCK)
The specifications maintained by JCP include Java ME Java SE、Java EE、XML、 OSS , JAIN, etc. Organization members can submit JSR (Java Specification Requests) After passing the specific program, enter the next version of the specification.
JSR is a specific description of the Java platform specification proposed earlier and finally released. Usually, a new JSR is proposed to add or standardize the functions of the Java platform. A specific JSR is jointly formulated by the expert group, and the work is coordinated by the team leader. For example, CLDC1.0 (Connected Limited Device Configuration,JSR30) Antero Taivalsaari of Sun Corporation is the team leader, and the members of the expert group also include Siemens, Motorola, Nokia, Symbian, etc. The Java ME platform specification is defined in JSR68, and the specification leader is Jon Courtney of Sun Corporation.
After JSR is completed, relevant specifications and Java APIs will be published on the official website of JCP. Equipment manufacturers can implement a JSR in their own products, such as MIDP2.0 (JSRll8) But these must pass TCK (Technology Compatibility Kit) Test to ensure technical compatibility. [36]
According to the technical category, it can be divided into the following categories:
1. J2EE Platform Specification [37]
2. J2SE Platform Specification [38]
3. J2ME Platform Specification [39]
4. Operation Support System Specification (OSS) [40]
5. Java Application of Integrated Network (JAIN) [41]
6. XML Operation Specification [42]

Technology application

Announce
edit

Android app

Many Android Applications are developed by Java programmers. Although Android uses different JVMs and different encapsulation However, the code is still written in the Java language. A considerable number of mobile phones support Java games, which makes many non programmers know Java.

Server program applied in financial industry

Java is widely used in the financial services industry. Many third-party trading systems, banks, and financial institutions choose to use Java for development because Java is relatively safe. [43] Large multinational investment banks use Java to write electronic trading systems, settlement and confirmation systems, data processing projects and other projects at the front and back offices. In most cases, Java is used for server-side development, but most of them do not have any front-end. They are usually developed from a server (Upper level) Receive data and send it to another processing system after processing (Next level processing)

website

Java occupies a certain position in the field of e-commerce and website development. Developers can use many different frameworks to create web projects, Spring MVC, Struts 2.0, and frameworks. Even simple servlets, jsps and struts based websites are often used in government projects. For example, websites of medical care, insurance, education, national defense and other different departments are developed based on Java.

Embedded field

Java has a lot of room for development in the embedded field. On this platform, only 130 KB Can use Java technology (on smart card or sensor)

Big data technology

Many Hadoop and other big data processing technologies use Java, such as Apache's Java based HBase, Accumulo and Elastic Searchas.

Space for high-frequency trading

The Java platform improves the features and timely compilation of this platform, and it can also transfer data like C++. For this reason, Java has become the language for programmers to write trading platforms. Although its performance is not as good as C++, developers can avoid security, portability, maintainability and other problems.

Scientific application

Java is a good choice for scientific applications, including natural language processing. The main reason is that Java has better security, portability, maintainability and concurrency than C++or other languages. [44]

Study Guide

Announce
edit

examination

Sun's Java certification includes the following four types: Java programmers (SCJP) , Java developer (SCJD) Java Web component development (SCWD) and Java2 enterprise designer enterprise technology (SCJA). The first two kinds of Java certification examinations are widely carried out in China. The certification examination for Java programmers takes JavaSL-275 designated by Sun Corporation as the teaching material, and the examination number is 310-025. The certification exam for Java developers takes the JavaSL-285 designated by Sun as the teaching material, and the computer exam part is 310-027. [45]
Sun Certified Java Programmer (SCJP)
Java programmer certification, testing the essentials and capabilities of Java programming, focusing on Java syntax and JDK (Java Development Kit)
Sun Certified Java Developer (SCJD)
Java developer certification to further test the ability to develop applications in Java. You must complete a program design project before answering several questions related to this project.
Sun Certified Web Component Developer for Java 2Platform Enterprise Edition (SCWD)
Web component developer certification, testing the program development skills of technicians for Java Servlets and JSP (Java Server Page).
Sun Certified Enterprise Architect for J2EE Technology (SCAJ)
Java2 Enterprise Designer Certification is the most advanced certification of Java, which tests the relevant technical experience and ability of J2EE architecture and other system integration. [46]
The training period of the standard courseware of the Java programmer course customized by Sun is 5 days (30 class hours) During the training, the lecturer used the teaching materials designated by Sun Corporation to comprehensively and systematically describe the content of the course, and guided the trainees to learn in a hierarchical, focused and purposeful manner according to the depth of knowledge required. At the same time, the analysis and explanation of various question types can help students understand the java certification exam intuitively and accurately.

teaching material

Java from Beginner to Proficient (3rd Edition): from the perspective of beginners, through easy to understand languages and rich and colorful examples, it introduces in detail the knowledge that needs to be mastered to use Java language for program development.
Java Programming Language (3rd Edition): This book tells people familiar with basic programming concepts about the Java programming language. The book explains the Java language, but it is not an obscure formal introduction, nor does it cover all aspects of the Java language. [47]
Crazy Java Handout: This book deeply introduces relevant aspects of Java programming, covering the basic syntax structure of Java, Java's object-oriented characteristics, Java collection framework system, Java generics, exception handling, Java GUI programming, JDBC database programming, Java comments, Java's IO stream system, Java multithreading programming, Java network communication programming, and Java reflection mechanism. [48]
Java Programming Ideas (Version 4): Based on JDK5.0, new language features have been added and the structure of Version 3 has been adjusted, so that the arrangement of all chapters is more gradual, and the content of each chapter is more balanced, This makes it easier for readers to read the book and fully understand the contents of each chapter. [49]
Java Classic Example (2nd Edition): This book contains a lot of useful information. However, due to the wide range of topics involved, it is impossible to elaborate on all topics. Therefore, this book also provides relevant web sites and reference books. This is also for the target readers of this book: people who want to learn more Java. [50]
Java Language Programming: This book is one of the series of Selected Characteristic Teaching Materials for Undergraduate Computer Majors in Colleges and Universities published by Tsinghua University Press, and it is also a national planning textbook for general higher education during the 11th Five Year Plan period. This textbook aims to cultivate application-oriented computer talents. Based on curriculum reform and textbook innovation, it forms the core content of the textbook on the basis of summing up the author's years of experience in Java language teaching. This textbook can be used by computer majors in ordinary colleges and universities, as well as self-study. [51]
Java Programming Methodology 》: This book systematically introduces Java programming from multiple perspectives, and presents excellent designs to readers, which provides effective reference for readers to understand and master Java programming design ideas and skills in a deeper and more comprehensive way. It can be used as a reference book for Java programming enthusiasts and Java development engineers. [58]

Language evaluation

Announce
edit

Development prospect

The birth and wide application of computers have promoted the development of IT field, but computers in the 21st century are no longer accessible INTERNET The only way. All kinds of more information-based electronic products have gradually entered the IT field, promoting the great development of the PC era. Due to the rapid increase of various consumption information, the traditional client is inferior to PC in all aspects. The development of PC also puts forward a higher standard for the application management system of the server. Java language fully meets the conditions of PC, and has made breakthroughs and innovations in reducing memory, directly running in various electronic products, being recognized by any device in the network, and making full use of network resources, creating powerful conditions for the development of the PC era.
Java
With the development of IT industry, computer applications in many enterprises are also transforming, and the computer model applied in enterprises is gradually changing to smaller clients The server With the increase, the capacity of the database is also changing in the direction of corresponding increase. In addition, plus the unique characteristics of Java language, according to its advantages in the development of application programs in various servers, the enterprise version of J2SE provides a good platform for the application of computer mode in the enterprise environment.
Java language has designed Java servlet and SQL-J technology for close connection with database, and JSP Technology. With the development of JSP technology, the network application of Java language has become more practical, efficient and fast, and has become a common technology in the IT industry. JSP uses Java language as its server language, and combines Java Script And many other client languages, making the web browser more convenient to display. [52]
In terms of remote network teaching, Java has changed the traditional Web The form of the page makes the online distance learning more dynamic, convenient and safe, and enriches the means and coverage of online distance learning. [53]

Contribution and influence

Java language is a computer language program that develops rapidly with the times. It deeply demonstrates the essence of program writing. In addition, its concise and rigorous structure and concise grammar writing provide guarantee for its future development and maintenance. Because it provides support for network applications and multimedia access, it will promote the application of the Web on the Internet and enterprise networks. [54] In addition, in order to maintain the growth of Java and promote the participation of the Java community, Sun announced the opening of Java core source code at the Java One developer conference to encourage more people to participate in the activities of the Java community. With the support of the Java community and IBM and other global technology partners, Java technology continues to play a powerful and important role in innovation and social progress, and with the reduction of its programming difficulty, more professionals focus on Java language writing and frame structure design. [55]