search
HomeJavajavaTutorialLet's talk about the introduction to JAVA learning again

 The process of learning Java mainly focuses on the following aspects:

1. Always remind yourself that Java is an OOP language tool, not just coding. Only in this way can you master and use Java in general.

2. In the process of learning, it is best to understand the underlying mechanism of Java instead of just staying on the surface. It is not enough to copy the examples in the book and run them to get the results. It should be noted that even for a simple example, you must have the patience to ponder, debug, and modify it.

3. In the process of learning, you must do it yourself and write code, rather than just reading a book. Many things and experiences must be done by yourself to truly belong to yourself. It is best to participate in some actual projects.

4. After learning to a certain stage, you start to want to do something with what you have learned. At this time, you should start to learn some more and more complex knowledge, such as the construction of J2EE platform, EJB development, etc. For this part, I suggest that it is best to find a thin book to get a general understanding first, to have an overall familiarity in your mind, and to have a preliminary grasp of more technical terms. I think it is very good to read "J2EE Technology Practice" at this stage. It can let you understand the various technologies and frameworks included in J2EE, and at the same time provide many practical examples to deepen the overall understanding of J2EE.

My interest and determination to learn Java played a crucial role. After having the above foundation, I started to learn Java step by step.

Building Java environment

To run Java programs, JDK must be installed. JDK is the core of the entire Java, including the Java compiler, JVM, a large number of Java tools and Java basic API.

You can download JDK from http://Java.sun.com, there are versions 1.4 and 1.31. First of all, version 1.31 is used in my learning environment.

Unzip and install. Then, set up the environment.

1. For the Windows platform, make the following settings:

set PATH=YOUR_INSTALL_ DIRbin; C:Windows;C:WindowsCommand

set classpath=. ;YOUR_INSTALL_DIRlibtools.jar

2. For the Linux platform, edit /etc/PRofile File:

JAVA_HOME=your_install_dir/JDK/j2sdk

CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/td.jar:$JAVA_HOME/jr

-e/lib/rt.jar:.

PATH=$PATH:$JAVA_HOME/bin

eXPort PATH PS1 USER LOGNAME MAIL HOSTNAME HISTSIZE HISTFILESIZE

INPUTRC JAVA_HOME CLASSPATH RESIN_HOME

Finally, enter Java on the terminal to see if you can find this command. If you can find it, the installation will be successful. .

Here are some important commands of the JDK:

◆Java execution tool, which is a command to start the JVM (virtual machine) and execute class (BYTE CODE) files;

◆javac compiler, generated from .java files .class file;

◆jar Java compression and packaging tool;

◆Javadoc document generator.

The last one is JDK Documentation, which is the online help document of JDK. It is the most useful and important learning reference document. You should read it more.

Start writing your own code

Now that the environment is available, it’s time to write a simple code for testing. Let’s start with the classic “hello Word”.

1. First use the editor to write a code (I use Linux vi):

[stone@coremsg work]$ vi Hello.Java

public class Hello{

public static void main(String []argc){

System.out.println("Hello Word!");

}

}

2. Compilation:

[stone@coremsg work]$ Javac Hello.Java

3. Execution:

[stone@coremsg work]$ Java Hello

Hello Word!

Success! This is my first Java program. From then on, I knew that I had begun to enter the world of Java, and then I relied on my own efforts. In this process, the author believes that there are several points that need to be paid attention to.

When learning a new language, reference books are indispensable. My suggestion is to start by finding a shorter introductory book to learn the simplest and most basic things, including learning Java syntax. At the same time, you should debug the simplest program more and think more about what will happen if you change it? Why does it have to be written that way? If you think more about these issues and then act on them, you will gain more. It's useful to think about it this way. In addition, at this stage, you should also read more online help of JDK and try to master as much as possible the Java basic class library API provided by JDK.

After you have a certain foundation and can write some simple programs, you can start reading the book "Thinking in Java". It provides a relatively complete introduction to Java's syntax, object-oriented features, core class libraries, etc. Through this level of learning, you can deepen your understanding of Java and the application of underlying principles, and at the same time, you can fully understand the entire system of Java. At this stage, you should focus on learning the features of Java's object-oriented programming language, such as continuations, constructors, abstract classes, interfaces, method polymorphism, overloading, overriding, Java's exception handling mechanism, etc. You must have a good understanding of the above concepts. Very clear understanding. The purpose of this is to allow yourself to apply these technologies in practice for reasonable programming (for example, you will consider whether a class should be designed with abstraction or interface, etc.). This requires application and learning in a large amount of practice. This was also the advice many friends gave me at the time.

Learn more

If you want to use Java to complete various more powerful tasks, then you need to learn more things besides the language.

1.Java Web Programming

For Java Web programming, you should and must be familiar with and master the HTTP protocol. You can refer to the third volume of Stevens' "TCP/ip Detailed Explanation". Java Servlet technology provides the ability to generate dynamic Web page content. This is one of the most basic functions in your Java project, so you must learn it. Through this stage of study, you should master the Web programming of Servlet/jsp.

2. J2EE learning

J2EE contains too many technologies. If you want to sit at the table and study with a pile of books, it won't be very effective. I suggest that when starting this stage of learning, you can follow the following steps. The general idea is to "grasp the overall situation and defeat each one."

◆ Understand the meaning of technical terms in J2EE.

My feeling is that there are many various technologies involved in the J2EE standard. It would be unrealistic and ineffective to learn them one by one from the beginning. My suggestion is to first have a general understanding of the technologies, such as EJB, JavaIDL, JTA, etc. Maybe you don't know how to write an EJB, but you need to know what an EJB is and what it can do. Once you have this concept, it will be much faster to learn it purposefully. I would like to repeat it again - it must be done in practice.

◆ Understand the design patterns in J2EE, which can help you have an overall grasp of J2EE.

MVC development model has been proven to be one of the effective methods. It can separate data access and data presentation. You can develop a scalable, easy-to-extend controller to maintain the entire process. Through this level of learning, when you face a project, you should first grasp the design of its overall architecture and decide which technologies in the J2EE standard to use.

◆ Understand some typical cases of J2EE platform and deepen the concept and understanding of this technology.

You can usually pay more attention to this aspect, familiarize yourself with some typical cases, and analyze why it uses that time? What purpose can be achieved by doing so? Then contact the projects around you to see if they can be used as references.

◆ Learn various technologies under J2EE.

After learning the previous stages, you can build a J2EE platform by yourself and start learning each technology in detail. You can participate in company-related projects to learn, or you can build a platform yourself to learn. At this time, you should find some relevant books to learn step by step. There is no shortcut. If you are not satisfied with these, then you should learn more about UML, design patterns, etc.

The above is about getting started with JAVA learning. For more related articles, please pay attention to the PHP Chinese website (www.php.cn)!


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Why is Java a popular choice for developing cross-platform desktop applications?Why is Java a popular choice for developing cross-platform desktop applications?Apr 25, 2025 am 12:23 AM

Javaispopularforcross-platformdesktopapplicationsduetoits"WriteOnce,RunAnywhere"philosophy.1)ItusesbytecodethatrunsonanyJVM-equippedplatform.2)LibrarieslikeSwingandJavaFXhelpcreatenative-lookingUIs.3)Itsextensivestandardlibrarysupportscompr

Discuss situations where writing platform-specific code in Java might be necessary.Discuss situations where writing platform-specific code in Java might be necessary.Apr 25, 2025 am 12:22 AM

Reasons for writing platform-specific code in Java include access to specific operating system features, interacting with specific hardware, and optimizing performance. 1) Use JNA or JNI to access the Windows registry; 2) Interact with Linux-specific hardware drivers through JNI; 3) Use Metal to optimize gaming performance on macOS through JNI. Nevertheless, writing platform-specific code can affect the portability of the code, increase complexity, and potentially pose performance overhead and security risks.

What are the future trends in Java development that relate to platform independence?What are the future trends in Java development that relate to platform independence?Apr 25, 2025 am 12:12 AM

Java will further enhance platform independence through cloud-native applications, multi-platform deployment and cross-language interoperability. 1) Cloud native applications will use GraalVM and Quarkus to increase startup speed. 2) Java will be extended to embedded devices, mobile devices and quantum computers. 3) Through GraalVM, Java will seamlessly integrate with languages ​​such as Python and JavaScript to enhance cross-language interoperability.

How does the strong typing of Java contribute to platform independence?How does the strong typing of Java contribute to platform independence?Apr 25, 2025 am 12:11 AM

Java's strong typed system ensures platform independence through type safety, unified type conversion and polymorphism. 1) Type safety performs type checking at compile time to avoid runtime errors; 2) Unified type conversion rules are consistent across all platforms; 3) Polymorphism and interface mechanisms make the code behave consistently on different platforms.

Explain how Java Native Interface (JNI) can compromise platform independence.Explain how Java Native Interface (JNI) can compromise platform independence.Apr 25, 2025 am 12:07 AM

JNI will destroy Java's platform independence. 1) JNI requires local libraries for a specific platform, 2) local code needs to be compiled and linked on the target platform, 3) Different versions of the operating system or JVM may require different local library versions, 4) local code may introduce security vulnerabilities or cause program crashes.

Are there any emerging technologies that threaten or enhance Java's platform independence?Are there any emerging technologies that threaten or enhance Java's platform independence?Apr 24, 2025 am 12:11 AM

Emerging technologies pose both threats and enhancements to Java's platform independence. 1) Cloud computing and containerization technologies such as Docker enhance Java's platform independence, but need to be optimized to adapt to different cloud environments. 2) WebAssembly compiles Java code through GraalVM, extending its platform independence, but it needs to compete with other languages ​​for performance.

What are the different implementations of the JVM, and do they all provide the same level of platform independence?What are the different implementations of the JVM, and do they all provide the same level of platform independence?Apr 24, 2025 am 12:10 AM

Different JVM implementations can provide platform independence, but their performance is slightly different. 1. OracleHotSpot and OpenJDKJVM perform similarly in platform independence, but OpenJDK may require additional configuration. 2. IBMJ9JVM performs optimization on specific operating systems. 3. GraalVM supports multiple languages ​​and requires additional configuration. 4. AzulZingJVM requires specific platform adjustments.

How does platform independence reduce development costs and time?How does platform independence reduce development costs and time?Apr 24, 2025 am 12:08 AM

Platform independence reduces development costs and shortens development time by running the same set of code on multiple operating systems. Specifically, it is manifested as: 1. Reduce development time, only one set of code is required; 2. Reduce maintenance costs and unify the testing process; 3. Quick iteration and team collaboration to simplify the deployment process.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools