🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Dados podem ser armazenados em arquivos de texto ou arquivo...

Próximas questões
Com base no mesmo assunto
Q831026 Programação
Dados podem ser armazenados em arquivos de texto ou arquivos binários. A linguagem Java processa cada arquivo como um fluxo de bytes sequencial. Fluxos de arquivos podem ser utilizados para entrada e saída de dados como bytes ou caracteres. O Java também pode associar fluxos a diferentes dispositivos. Quando um programa Java começa a ser executado, ele cria objetos de fluxo que estão relacionados com dispositivos. Que objetos são esses?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é: B - System.in, System.out e System.err.

Vamos entender por que esta é a alternativa correta e os motivos pelos quais as demais são incorretas.

Em Java, quando um programa é executado, ele cria automaticamente três fluxos de I/O (entrada/saída) associados a dispositivos padrão:

  • System.in: Representa o fluxo de entrada padrão, normalmente associado ao teclado.
  • System.out: Representa o fluxo de saída padrão, utilizado para exibir dados no console.
  • System.err: Representa o fluxo de saída de erro padrão, também geralmente exibido no console, mas usado especificamente para mensagens de erro.

Esses objetos são fundamentais para a interação básica com o usuário e o sistema operacional, permitindo a comunicação através de entrada e saída de dados.

Agora, vamos analisar as alternativas incorretas:

A - java.io e java.nio

Esses são pacotes do Java que contêm classes para operações de entrada e saída, mas não são objetos de fluxo específicos. O pacote java.io lida com operações de I/O tradicionais, enquanto java.nio oferece uma nova forma de I/O (non-blocking I/O). Eles são usados para trabalhar com fluxos, mas não são os fluxos em si que o Java cria automaticamente ao iniciar um programa.

C - Path, DirectoryStream e Files

Estas são classes da API java.nio.file para trabalhar com sistemas de arquivos, como manipulação de caminhos e diretórios. Elas não se referem aos fluxos de entrada e saída padrão associados a dispositivos.

D - CreateTextFile e Formatter

CreateTextFile e Formatter são ferramentas para criar e formatar arquivos de texto, respectivamente. Elas não estão relacionadas aos objetos de fluxo padrão que o Java cria para entrada e saída durante a execução do programa.

E - IOException, System.exit e Scanner

Embora System.exit e Scanner sejam relacionados a operações de sistema e entrada de dados, respectivamente, IOException é uma exceção tratada em operações de I/O, mas nenhum desses representa os objetos de fluxo padrão que o Java utiliza para dispositivos ao iniciar um programa.

Espero que essa explicação tenha ajudado a compreender melhor como o Java lida com fluxos de entrada e saída padrão. Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Um programa Java abre (cria) um Arquivo criando e associando um Objeto ao fluxo de bytes ou caracteres. Quando um programa inicia a execução, o Java cria três objetos de fluxo que são associados a diferentes dispositivos:

 

System.in                        objeto de fluxo de entrada padrão                   Leitura

System.out                     objeto de fluxo de saída padrão                       Gravação

System.err                      objeto de fluxo de erro padrão                         Erro

 

A classe System fornece os métodos setIn(), setOut() e setErr() para redirecionar os fluxos de entrada, saída e erro padrões.

GABARITO B

Quando um programa Java começa a executar, ele cria três objetos de fluxo que estão relacionados com dispositivos — System.in, System. out e System.err.

DEITEL, Paul; DEITEL Harvey. JAVA como Programar. 10.ed. [S.l.]: Pearson Prentice Hall, 2016. 

Pág 509

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo