[JAVA] Lire "Hello world"

Aperçu

C'est le printemps, j'ai donc écrit "Hello world" au lieu de mon intention initiale. Comme vous le savez tous, "Hello world" est un simple code d'introduction. Cependant, d'un autre côté, il y a certains points caractéristiques qui sont difficiles à comprendre pour les débutants qui sont nouveaux dans la langue.

Dans cet article, j'expliquerai les parties caractéristiques de "Hello world". Seulement "Hello world", mais "Hello world".

HelloWorld.java

Tout d'abord, jetez un œil au code principal de cet article. C'est un "Hello world" très ordinaire.

HelloWorld.java


public class HelloWorld {

  public static void main(String[] args) {
    System.out.println("hello, world");
  }

}

HelloWorld.résultat d'exécution de la classe


hello, world

Partie caractéristique de "Hello world"

Jetons maintenant un œil à la description caractéristique de "Hello world" (par rapport aux programmes Java généraux). Chaque article est ** à ma discrétion ** avec un «diplôme spécial». Le plus ★, le plus spécial (une description introuvable dans les programmes généraux).

Il n'y a pas de déclaration «package» (spécialité: ★★★)

Un programme Java typique commence par une déclaration package. Cependant, «HelloWorld.java» n'a pas de déclaration de «package».

Exemple de déclaration de package


package com.example.xyz;

Sans la déclaration package, la classe appartiendrait à un package spécial appelé" package par défaut ". Le "package par défaut" est parfois appelé "package anonyme".

Les classes qui appartiennent au "package par défaut" ne peuvent pas être ʻimport d'autres classes. C'est parce qu'il est nécessaire de spécifier "nom de classe incluant le nom de package [^ fqcn]" dans la déclaration ʻimport.

Exemple de déclaration d'importation


import com.example.xyz.HelloWorld;

Quel est le diplôme spécial?

Les classes qui ne peuvent pas être ʻimport` à partir d'autres classes ne sont pas pratiques, de sorte que le "package par défaut" n'est utilisé que dans du code jetable tel qu'un exemple de code.

Comme il est peu probable que la déclaration package n'existe pas dans un programme général non jetable, le degré spécial est défini sur ** ★★★ (3) **.

La déclaration de classe n'a pas d'extensions (spécialité: ☆☆☆)

En Java, toutes les classes sont des sous-classes de la classe ʻObject. Pour les sous-classes directes de la classe ʻObject, la description de ʻextends Objectpeut être omise. Autrement dit, la classeHelloWorld est une sous-classe directe de la classe ʻObject.

Un exemple de déclaration d'une sous-classe directe de la classe Object


//Exactement la même que la déclaration de classe ci-dessous
public class HelloWorld {
  // ...
}

//Être explicitement une sous-classe directe de la classe Object
public class HelloWorld extends Object {
  // ...
}

Quel est le diplôme spécial?

ʻExends Object` n'est généralement pas spécifié [^ extend]. Ainsi, le diplôme spécial est ** ☆☆☆ (0) **.

La méthode main est définie (spécialité: ★ ☆☆)

La méthode main est une méthode spéciale. La commande java est conçue pour appeler la méthode main de la classe spécifiée au moment de l'exécution.

Ce qui suit est tiré de la [Documentation officielle de la commande java] link-tools_java.

La commande java lance une application Java. Cela se fait en lançant l'environnement d'exécution Java, en chargeant la classe spécifiée et en appelant la méthode principale de cette classe.

Cette méthode doit être déclarée comme publique et statique. Ne renvoyez pas non plus de valeur. De plus, vous devez être en mesure de spécifier un tableau String en tant que paramètre. Le format de la déclaration de méthode est le suivant:

public static void main(String[] args)

Comme mentionné ci-dessus, voici les conditions de la méthode appelée à partir de la commande java.

S'il n'y a pas de méthode main appelable dans la classe spécifiée, la commande java entraînera l'erreur suivante.

Exemple d'erreur lorsque la méthode principale n'existe pas


> java HelloWorld
Erreur:La méthode principale est introuvable dans la classe HelloWorld. Définissez la méthode principale comme suit:
   public static void main(String[] args)

C'est gentil.

Quel est le diplôme spécial?

Ce n'est pas une description spéciale, mais pour les grands programmes, la plupart des classes n'ont pas de méthode main. Peut-être que certains programmeurs Java n'ont jamais utilisé la méthode main [^ main], donc le degré spécial est défini sur ** ★ ☆☆ (1) **.

Traitement spécifique de "Hello world"

Cela fait longtemps, alors je l'ai posté séparément. → [Comprendre System.out.println ("bonjour, monde")] link-sysout

HelloWorld.java (description redondante)

J'ai essayé de refléter l'explication jusqu'à présent dans le code. J'ai ajouté beaucoup de commentaires, alors veuillez le lire.

HelloWorld.java(Description redondante)


//En omettant la déclaration pacakege, cette classe appartient au package par défaut

import java.lang.*;
//* Ci-après, java.Les classes du package lang peuvent être utilisées sans qualifier le nom du package, mais sont écrites en FQCN à titre d'illustration.

//Cette classe est une sous-classe directe de la classe Object
public class HelloWorld extends java.lang.Object {

  //Définir une méthode avec des conditions appelées à partir d'une commande java
  public //-Le modificateur d'accès est public
  static //・ Statique(Méthode statique)Est
    void //-La valeur de retour est nulle
    main //-Le nom de la méthode est main
  (java.lang.String[] args) //-L'argument est String[](Tableaudechaînes)Est
  {
    //Obtenez le flux de sortie "standard" à partir du champ out de la classe System
    java.io.PrintStream ps = java.lang.System.out;

    //Créer une instance String sans utiliser de littéral de chaîne
    char data[] = { 'H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd' };
    java.lang.String str = new java.lang.String(data);

    //Imprimer str pour diffuser avec la méthode println
    ps.println(str);
  }

}

à la fin

Enfin, jetons à nouveau un regard sur le "Hello world" ordinaire.

HelloWorld.java


public class HelloWorld {

  public static void main(String[] args) {
    System.out.println("hello, world");
  }

}

De cette façon, j'ai réalisé qu'il y avait beaucoup de choses que je pouvais apprendre de "Hello world". Seulement "Hello world", mais "Hello world".

référence

La destination du lien est Java7 parce que je sentais que beaucoup de gens l'utilisaient. Le contenu de cet article est fondamentalement le même pour toutes les versions.

[^ fqcn]: nom de classe complet. Il est appelé "FQCN" pour abréviation de "Nom de classe pleinement qualifié". [^ extend]: Je ne l'ai vu qu'en "code explicatif" comme celui-ci. [^ main]: Il existe de nombreux programmes qui fonctionnent sans écrire la méthode main, comme lors de l'utilisation d'un programme ou d'un framework côté serveur.

Recommended Posts

Lire "Hello world"
Les débutants en Java lisent Hello World
Java, bonjour le monde!
Java Hello World
"Hello World" en Java
Apprendre Java (1) - Hello World
Hello World en Java
Étudier Java-Partie 1-Hello World
Hello World avec Web Assembly
Hello World avec Micronaut
Hello World avec Spring Boot
Bonjour tout le monde avec Spring Boot!
Bonjour tout le monde avec VS Code!
java bonjour le monde, compilez, exécutez
Hello World avec Spring Boot
Hello World avec SpringBoot / Gradle
Bonjour tout le monde! Avec Asakusa Framework!
Spring Boot Hello World dans Eclipse
Hello World pour le plugin Java ImageJ
Jusqu'à "Hello World" avec Spring Boot
Hello World avec AWS Lambda + Java
Bonjour tout le monde avec Kotlin et JavaFX
Hello World avec Docker et langage C
Bonjour le monde de Java dans Eclipse maintenant
(Intellij) Hello World avec Spring Boot
Hello World avec GlassFish 5.1 + Servlet + JSP
Créez un PDF avec itext7 ~ HelloWorld ~
bonjour, monde dans Vanilla Java-EHW2018 "MVP"
"Hello world" pour ImageJ avec Eclipse
Hello World avec GWT 2.8.2 et Maven
Version du système d'exploitation Android (7.1.2) et Hello World
Bonjour tout le monde en Java et Gradle
Création d'une série de plugins Elasticsearch (1) Hello World
Hello World avec Eclipse + Spring Boot + Maven
Bonjour tout le monde!
Bonjour tout le monde avec le moteur de modèle Java Thymeleaf
[Entraine toi! ] Affichez Hello World avec Spring Boot
Développement Java avec Codenvy: Hello World! Run
"Hello, World!" Avec Kotlin + CLI en 5 minutes
Hello World sur Mac VSCode Java
Introduction à Ratpack (3) - Explication détaillée de Hello World
Bonjour tout le monde avec Kotlin et Tornado FX
Bonjour RSpec
Comment Spring Security fonctionne avec Hello World
(IntelliJ + gradle) Hello World avec Spring Boot
Construction d'un environnement Java minimal et Hello World
Mémorandum d'étude sur l'intégration de Spring ~ Comprendre l'exemple d'intégration de Spring 1. Hello World ~
Sortie de Hello World dans la fonction principale simple de kotlin
Hello World avec JavaFX 11 (OpenJFX) de Liberica JDK 11
Bonjour tout le monde! Avec Spring Boot (Marven + éditeur de texte)
Hello World à une vitesse explosive avec Spring Initializr! !! !!
Créer un environnement Java et afficher hello world [Débutant]
Exécutez JSP Hello World avec Tomcat sur Docker
Les débutants essaient d'utiliser Android Studio Partie 1 (Hello World)
Jusqu'à ce que vous installiez Gradle et sortiez "Hello World"
Revenant au début, Java-Kisama s'est moqué de Hello World-
[Java] Hello World avec Java 14 x Spring Boot 2.3 x JUnit 5 ~
Afficher "Hello World" dans le navigateur à l'aide de Java
Afficher "Hello World" dans le navigateur à l'aide de Java