Java (super beginner edition) that can be understood in 180 seconds

Introduction

This is an article that tells in 180 seconds a 90-minute class that you might learn in high school or vocational school for those who just bought a computer and do not know Java even a millimeter. Read more articles written by other great people.

This article can be read in 170 seconds.

1. What is Java?

I have roughly classified the word Java that is muttered around me into three categories. java1.png

--Programming language It is a word for developing various applications (software running on a personal computer, etc.). The word "Java language" is transmitted without any misunderstanding. In order to develop, you need a group of tools for developers called "JDK: Java Development Kit". You can get it for free. You don't need a JDK if you just want to use the application.

--The application itself An application written in the Java language. The word "Java app" is transmitted without any misunderstanding. If it is Minecraft, it is the game itself of Minecraft. It is called Micra Java version or PC version. By the way, I call it the Java version because the expression PC version is ambiguous.

--Where to run the application A dedicated place to run apps written in the Java language. "Java execution environment", "Java runtime", "JRE", etc. are transmitted without any misunderstanding. Actually, the Java version of Minecraft comes with a JRE as shown in the image below, so you can play without worrying about the JRE. In the case of other applications, you may be asked "Prepare the JRE" in the first place. javapath1.png

  1. JVM Normally, running an application for Mac on top of Windows does not work. This is because Windows and Mac have different head shapes and different conversational words. dora0.png But more than 30 years ago, a genius muttered, "If you can't talk, you should make a translator." A few years later, a revolutionary software called JVM (Java Virtual Machine) came out. I was born. The JVM is part of the JRE and is like the heart. The JVM was developed as dedicated software that fits the shape of everyone's head and fits nicely. From the application's point of view, the shape of the head always looks like a constant shape, and this JVM behaves as the machine (VM: virtual machine) that runs it. dora2.png

Java applications run on this JVM, and programmers can now always create applications of the same shape without being aware of the shape of Sneo's head, so it doesn't matter on Windows or Mac. You can now develop and distribute your application to Java. java2.png When you start the Java version of Minecraft, you can see that Minecraft is running in Java as shown in the image above. Google Chrome works as Google Chrome as it is. The idea of a translator, a virtual machine, is now a very common IT term, and we've come to hear the word virtualization in many places. Not limited to PCs, DVD drive virtualization, server virtualization, network virtualization, data center virtualization, etc. The basis of this idea is to use it as if there is XX from the user's point of view (it can be used without being aware of the type, shape and address of the hardware).

3. Bad and good

Java has its bad points and its good points. dora3.png

――Good point As mentioned above, you can run the same application in different environments. Also, since the JVM itself is software, you can insert multiple JVMs and use them properly. You can use the one that originally came with the Java version of Minecraft, or you can use the latest version of Java that you put in yourself. mine.png Also, even if the version of Windows or Mac changes, as long as the version of the JVM running the Java application does not change, you can (and should be) able to play Minecraft today even after 50 years. You can freeze the environment in which the application runs and carry it to another location for decades.

Summary

I took 210 seconds to read this article.

Recommended Posts

Java (super beginner edition) that can be understood in 180 seconds
Basic functional interface that can be understood in 3 minutes
Write a class that can be ordered in Java
Reference memo / In-memory LDAP server that can be embedded in Java
Summary of ORM "uroboroSQL" that can be used in enterprise Java
Introduction to Java that can be understood even with Krillin (Part 1)
Object-oriented that can be understood by fairies
[Android Studio] Description that can be continuously input in SQLite Database [Java]
Technology excerpt that can be used for creating EC sites in Java training
Convenient shortcut keys that can be used in Eclipse
List of devices that can be previewed in Swift UI
Syntax and exception occurrence conditions that can be used when comparing with null in Java
Create a jar file that can be executed in Gradle
Problems that can easily be mistaken for Java and JavaScript
[Java 8] Sorting method in alphabetical order and string length order that can be used in coding tests
Introduction to Rakefile that can be done in about 10 minutes
Static analysis tool that can be used on GitHub [Java version]
Note that system properties including JAXBContext cannot be used in Java11
It seems that data class-like functions will be added in Java14
Solve AtCoder Beginner Contest 151 in java
Java version notation that changes in Java 10
Solve AtCoder Beginner Contest 153 in java
Read CSV in Java (Super CSV Annotation)
Solve AtCoder Beginner Contest 160 in java
Solve AtCoder Beginner Contest 152 in java
Solve AtCoder Beginner Contest 156 in java
Call the super method in Java
[Java 8] Until converting standard input that can be used in coding tests into a list or array
Java file input / output processing that can be used through historical background
The story that the Servlet could not be loaded in the Java Web application
Log out a CSV file that can be read in Excel using logback
I didn't know that inner classes could be defined in the [Java] interface
Check with Java / Kotlin that files cannot be written in UAC on Windows