[JAVA] Qu'est-ce qu'un flux

J'écris le code pour la première fois dans la formation des nouveaux employés au travail. Je pense que le flux est une chose très basique, Je ne peux pas m'empêcher de découvrir ce que je n'ai pas compris.

Stream est «flux» en japonais. Je pense que le mot «flux de données» apparaît souvent dans les phrases qui décrivent les flux. Mais quand je dis «flux», cela ne me vient pas à l'esprit.

Définition

Dans le domaine de la programmation, il s'agit souvent d'un objet abstrait ou d'un type de données qui gère l'entrée et la sortie de données en général. C'est une abstraction qui vous permet de gérer un objet (zone de mémoire, fichier, réseau, etc.) dans lequel les données entrent et sortent du programme, et vous pouvez vous connecter et vous déconnecter, écrire et lire avec des opérations simples.

La source e-words(http://e-words.jp/w/%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%A0.html)

Cela signifie-t-il quelque chose comme "la zone où les données entrent et sortent peut être gérée par un programme"?

Alors, comment gérez-vous les flux en Java?

Toutes les fonctions d'entrée / sortie Java sont conçues sur la base du concept de "flux" qui représentent le flux de caractères et de séquences d'octets. En Java, les flux sont un mécanisme normalisé de lecture et d'écriture de données, et tous les objets contenus dans Java qui représentent des sources de données variables fournissent des méthodes de lecture et d'écriture de données sous forme de flux.

La source builder(https://builder.japan.zdnet.com/java/20363416/)

Oh, quand tout le traitement d'entrée / sortie est effectué dans des flux en Java ...

Les classes qui gèrent les E / S orientées flux sont souvent incluses dans le package java.io. Au cœur de ce package se trouvent deux classes abstraites, la classe InputStream et la classe OutputStream. Toutes les autres classes orientées flux sont définies comme des extensions de ces classes.

La source Comme ci-dessus

Je vois. Comme illustré sur le site d'origine, La classe FileReader hérite également de la classe InputStream. Donc, si vous l'utilisez, vous utiliserez un flux.

java.io.FileReader fileReader = new java.io.FileReader("/home/me/myfile.txt");

int aChar = 0;
while ((aChar = fileReader.read()) >= 0){
    System.out.println((char)aChar);
}

Alors, quelle est la différence entre utiliser un flux et ne pas l'utiliser? La question se pose, mais j'y reviendrai plus tard. .. ..

Recommended Posts

Qu'est-ce qu'un flux
Qu'est-ce qu'un servlet?
Qu'est-ce qu'une classe wrapper?
Qu'est-ce qu'un module Ruby?
Qu'est-ce qu'une virgule flottante?
Qu'est-ce qu'un commentaire significatif?
Qu'est-ce qu'un fichier JAR?
Qu'est-ce qu'une collection Java?
Qu'est-ce qu'une expression lambda?
Qu'est-ce que Fat⁉ enum?
Qu'est-ce qu'un extrait de code en programmation?
Qu'est-ce qu'un type booléen de colonne?
Qu'est-ce qu'une variable de type référence?
Qu'est-ce qu'une expression lambda (Java)
Qu'est-ce qu'un tableau bidimensionnel Ruby?
Qu'est-ce que Cubby
Qu'est-ce qui est nul? ]
Qu'est-ce que 'java
Qu'est-ce que Keycloak
Qu'est-ce que maven?
Qu'est-ce que Jackson?
Qu'est-ce que soi
Qu'est-ce que Jenkins
Qu'est-ce que ArgumentMatcher?
Qu'est-ce que IM-Juggling?
Qu'est-ce que les paramètres
Qu'est-ce que SLF4J?
Qu'est-ce que la façade? ??
Qu'est-ce que Java <>?
Qu'est-ce que Gradle?
Qu'est-ce que POJO
Qu'est-ce que 'java
Qu'est-ce que centOS
Qu'est-ce que RubyGem?
Qu'est-ce que before_action?
Qu'est-ce que Docker
Qu'est-ce que Byte?
Qu'est-ce que Tomcat
Qu'est-ce qu'une classe en langage Java (3 /?)
Qu'est-ce qu'un terminal? -Chemin absolu et chemin relatif-
Qu'est-ce qu'un fichier .original Spring Boot?
[Pour les débutants en programmation] Qu'est-ce qu'une méthode?
Qu'est-ce qu'une classe en langage Java (1 /?)
Qu'est-ce qu'une classe en langage Java (2 /?)
[Rails] Qu'est-ce qu'un point (.) Ou un deux-points (:)?
Qu'est-ce que l'assemblage Maven?
Qu'est-ce que `docker-compose up`?
Qu'est-ce que vue cli
Introduction aux fonctions récursives: qu'est-ce qu'une fonction récursive?
Qu'est-ce qu'une interface
Qu'est-ce que le moi de Ruby?
Qu'est-ce que l'attr_accessor de Ruby?
Qu'est-ce que l'encapsulation Java?
Qu'est-ce qu'une permission refusée?
Qu'est-ce que le contrôle d'instance?
Qu'est-ce qu'un initialiseur?