SóProvas



Questões de JVM (Máquina virtual Java)


ID
17872
Banca
CESGRANRIO
Órgão
BNDES
Ano
2008
Provas
Disciplina
Programação
Assuntos

Um servidor Linux, que roda, exclusivamente, um servidor de aplicação Java EE, possui 2 GB de memória RAM e 1 CPU. A única aplicação em execução atinge, em momentos de pico, 50 usuários simultâneos. Para que essa aplicação tenha um desempenho adequado, o tamanho máximo da Heap da JVM pode ser configurado para

Alternativas
Comentários
  • Qual o raciocício para responder a essa pergunta?
  • "Comentário: A questão trata de configurações de memória da JVM(Java Virtual Machine), que mais precisamente, a configuração da área de Heap. A JVM Heap Space é a área de memória onde todos os objetos residem. Além dos objetos criados nas aplicações, o heap ainda possui uma área de memória reservada para o Garbage Colletctor e para algumas outras atividades da JVM. Pode-se perceber então, que o heap deve ser configurado em tamanho de memória, ou seja, MB. Assim as alternativas A e C são descartadas pois nada se trata de quantidade máxima de threads suportadas.

    Quanto às outras alternativas, temos os seguintes fatos: o tamanho default da heap nas JVM vaira entre 1MB a 2MB dependendo da versão da mesma; o tamanho máximo default do Heap da JVM é em torno de 16MB a 64MB dependendo também das versões. Eliminamos assim a alternativa B pois não faria sentido para aumentar o desempenho de nossa aplicação, configurar um Heap com um tamanho máximo dentro do intervalo do tamanho default do mesmo(Veja que a questão pediu uma alternativa para o tamanho máximo).

    Por último, não faria muito sentido informar à JVM que o tamanho máximo da Heap como sendo o tamanho total de memória do servidor como mostra a alternativa D (tem que sobrar alguma coisa pro sistema operacional afinal ;-) ). Assim sendo, fica como sendo a alternativa correta a letra E.

    links interessantes:

    1)http://www.onjava.com/pub/a/onjava/2001/08/22/optimization.html
    2)http://www.javaworld.com/javaworld/jw-08-1996/jw-08-gc.html
    3) http://wiki.apache.org/tomcat/FAQ/Memory

    Bons Estudos!"
    Junho 2, 2008 Escrito por computacaoeconcursos | Arquitetura de Sistemas de Computação, Desenvolvimento, Questões de Provas | | Não Há Comentários
    :: Computação & Concursos ::.
    Theme: Andreas04 de Andreas Viklund. Blog no WordPress.com.
  • Eu daria outro raciocínio. É mais uma questão de sistemas operacionais do que java.Temos 2Gb de memória. Precisamos de parte dele para o sistema operacional e seus serviços. Sabemos que a máquina virtual é um programa pesado. Já temos aí bem menos do que 2Gb. O programa para rodar vai precisar ainda de memória para as threads (1 por usuário simultâneo + garbage collector) + variáveis estáticas + pilha das chamadas de função etc...A chave aí é que você só tem uma CPU, portanto só um heap está sendo usado ao mesmo tempo. Matou então as opções que não falam de memória. E matou a de 2Gb, pois com isto você teria swap o que tornaria tudo muito lento. Ficam então as opções de 32Mb ou 512M.Como você sabe que cada requisição é uma thread e que em java threads de mesma prioridade não são preemptivas, então poderia setar 512M. Aí no dia que fizer um upgrade do processador para um quadcore terá várias threads rodando ao mesmo tempo e ficará tudo muuuuuito mais lento:-)
  • Meu raciocínio: Se o default da heap da JVM é 128MB (lembro que uma vez aumentei para 256), e só tem isso rodando, aumenta pra 512MB... ;)

ID
27325
Banca
FCC
Órgão
TRE-SE
Ano
2007
Provas
Disciplina
Programação
Assuntos

Quando um servlet é carregado pela primeira vez para a máquina virtual Java do servidor

Alternativas
Comentários
  • service() - método responsável pelo tratamento das requisições vindas por parte do cliente.

    destroy() - Método que é responsável por
    destruir um servlet. Ele poderá ocorrer da seguinte forma:
    - Por invocação do própio método por parte do cliente.
    - Pelo container que ao identificar um servlet inativo
    durante um determinado período.
  • O recipiente de Servlet cria somente um exemplo de cada servlet mas o pedido de cada usuário é segurado com uma linha separada. Cada linha chama então os métodos do doGet ou do doPost.
    o método do init 1.The dos servlets está chamado quando os servlets são criados primeiramente e cada vez o usuário recebe um pedido para servlets, o usuário spawns um método novo do serviço das chamadas da linha.

    a verificação do método do serviço 2.The o tipo do pedido do HTTP (COMEÇAR, AJUSTAR, POSTO, SUPRESSÃO, etc.) e chama o doGet, o doPost, o doPut, o doDelete, o método etc. como apropriado.

    3.Finally, o usuário pode decidir-se remover um servlet carregado precedente. Neste caso, as chamadas do usuário destroem o método dos servlets.

    FONTE: (http://www.academictutorials.com/pt/servlets/servlets-lifecycle.asp)

ID
28981
Banca
CESGRANRIO
Órgão
CAPES
Ano
2008
Provas
Disciplina
Programação
Assuntos

Em que porção da JVM (Java Virtual Machine) são armazenados objetos instanciados em um programa JAVA ?

Alternativas
Comentários
  • A heap ("monte") é um local da memória que armazena todos os objetos que serão utilizados no seu programa (por isso é conhecido também como pool de memória). Quando um objeto é instanciado (geralmente através do operador new), esses objetos criados e seus respectivos parâmetros são automaticamente alocados na heap (através de seu construtor).



    Fonte:(http://osereojava.blogspot.com/2007/06/tutorial4parterepost.html)
  • De forma simples o heap é a área da memória em que os objetos da sua aplicação são armazenados. Mas não é qualquer tipo de objeto que é guardado lá, apenas aqueles criados à partir de classes, ou seja, os objetos com semântica de referência.

    http://pt.stackoverflow.com/questions/36741/heap-de-mem%C3%B3ria-java


ID
153220
Banca
CESPE / CEBRASPE
Órgão
TJ-DFT
Ano
2008
Provas
Disciplina
Programação
Assuntos

Julgue os itens subseqüentes, acerca da segurança em redes de
computadores.

Na linguagem Java, durante a interpretação do código, a JVM (java virtual machine) verifica se o applet faz tentativas de forjar ponteiros, de violar restrições de acesso em membros de classes privadas e de gerar falhas na pilha.

Alternativas

ID
157915
Banca
CESGRANRIO
Órgão
TJ-RO
Ano
2008
Provas
Disciplina
Programação
Assuntos

Para responder às questões de nºs 30 e 31, considere o
Oracle Application Server em sua versão 10.1.3.1, com
os patches 10.1.3.3 aplicados, e com as configurações
padrões, incluindo o Oracle HTTP Server e o Oracle
Containers for J2EE (OC4J).


A replicação de estado (sessões http) entre instâncias do OC4J no Oracle Application Server acontece, por padrão,

Alternativas

ID
177931
Banca
FCC
Órgão
TRT - 9ª REGIÃO (PR)
Ano
2010
Provas
Disciplina
Programação
Assuntos

NÃO se trata de uma afirmativa correta sobre o servidor web Tomcat:

Alternativas
Comentários
  • Apache: servidor web
    Tomcat: container Servlets/JSP

  •  O servidor Apache é capaz de executa código em PHP, Perl, Shell Script e até em ASP e pode atuar como servidor FTP, HTTP, entre outros.

    Já o tomcat só executa código em java.

  • O Tomcat é container WEB para aplicações Java (JSP, Servlet), ele não executa as mesmas funções que um servidor web Apache, principalmente, pois ele é exclusivo para uso da linguagem JAVA, não sendo compatível com outras linguagens como Asp.net, php, ruby dentre outros como o apache. O Tomcat foi totalmente escrito na Linguagem JAVA e por esse motivo para ser executado ele precisa de um Máquina Virtual (JVM) que está contida no pacote de instalação da plataforma Java SE. Por esses motivos apenas a letra A está incorreta.
  • Amigo, Augusto César Santos, segundo a aula do professor Thiago Camilo (Provas de TI) sobre Servidores de Aplicação, o 

    Apache: servidor HTTP (páginas estáticas)
    Apache Tomcat: servidro ou container Web (Servlets/JSP) requisições HTTP + respostas estáticas ou dinâmicas



ID
188740
Banca
FCC
Órgão
TRT - 9ª REGIÃO (PR)
Ano
2010
Provas
Disciplina
Programação
Assuntos

O JVM mais o núcleo de classes da plataforma Java e os arquivos de suporte formam o

Alternativas
Comentários
  •  Gabarito: C

    API - Definição
    É um conjunto de rotinas e padrões estabelecidos por um software para a utilização das suas funcionalidades por programas aplicativos que não querem envolver-se em detalhes da implementação do software, mas apenas usar seus serviços.

    J2EE - Definição
    A Plataforma Java 2 Enterprise Edition (J2EE) é um conjunto de especificações coordenadas e um guia de práticas que juntos permitem o desenvolvimento, instalação, execução e gerenciamento de aplicações n-camadas no servidor.

    JDK - Definição
    O JDK é um kit de desenvolvimento Java fornecido livremente pela Sun. Constitui um conjunto de programas que engloba compilador, interpretador e utilitários, fornecendo um pacote de ferramentas básicas para o desenvolvimento de aplicações Java.

    JRE - Definição
    Significa Ambiente de Tempo de Execução Java, e é utilizado para executar as aplicações da plataforma Java. É composto por bibliotecas (APIs) e pela Máquina virtual Java (JVM).

    JSP - Definição
    JavaServer Pages (JSP) é uma tecnologia utilizada no desenvolvimento de aplicações para Web, utilizando a linguagem java


ID
240517
Banca
FCC
Órgão
TRT - 22ª Região (PI)
Ano
2010
Provas
Disciplina
Programação
Assuntos

A plataforma Java disponibiliza um interpretador que traduz, em tempo de execução, o bytecode para instruções nativas do processador, permitindo, dessa forma, que uma mesma aplicação seja executada em qualquer plataforma computacional que possua essa implementação. Trata-se de

Alternativas
Comentários
  • Máquina virtual Java (do inglês Java Virtual Machine - JVM) é um programa que carrega e executa os aplicativos Java, convertendo os bytecodes em código executável de máquina. A JVM é responsável pelo gerenciamento dos aplicativos, à medida que são executados.

    Graças à máquina virtual Java, os programas escritos em Java podem funcionar em qualquer plataforma de hardware e software que possua uma versão da JVM, tornando assim essas aplicações independentes da plataforma onde funcionam.

     

    ALTERNATIVA A


ID
266815
Banca
CESPE / CEBRASPE
Órgão
PC-ES
Ano
2011
Provas
Disciplina
Programação
Assuntos

A respeito de desenvolvimento de sistema, reengenharia e
linguagens de programação, julgue os próximos itens.

O coletor de lixo da linguagem Java é controlado pela máquina virtual e é executado automaticamente. Entretanto, de dentro do programa, pode ser provocada a execução imediata da coleta de lixo.

Alternativas
Comentários
  • A chamada System.gc() apenas solicita que o coletor de lixo seja executado pela JVM. Mas a escolha do momento de execução do coletor ainda fica a cargo da JVM.
    Item Errado
  • O controlador de lixo não é controlado pelo programador e sim pela Máquina Virtual Java que decide quando executá-lo. [...] há a possibilidade do programador chamar o coletor de lixo, porém mesmo assim não há nenhuma garantia de que o coletor de lixo irá realmente ser executado naquele momento. Normalmente o coletor executa quando percebe-se que a memória está ficando sem espaço.

    Fonte: https://www.devmedia.com.br/principios-do-garbagecollector-em-java/25029


ID
308722
Banca
CESPE / CEBRASPE
Órgão
TJ-ES
Ano
2011
Provas
Disciplina
Programação
Assuntos

Julgue os itens de 29 a 40, relativos a fundamentos de computação
e linguagens de programação e desenvolvimento para a Web.

O JVM (Java Virtual Machine) é um interpretador que atribui portabilidade à linguagem Java, possibilitando, consequentemente, a sua execução em qualquer sistema operacional.

Alternativas
Comentários
  • Essa afirmação não é de todo correta, pois para que um programa java possa ser executado em um sistema operacional é necessário que haja uma JVM específica para aquele SO, assim não se pode afirmar que é para qualquer sistema operacional, pois se existir apenas um que não haja uma JVM implementada para ele, a questão se tornaria errada.
    Inclusive se não me engano, o próprio CESPE já considerou essa afirmação incorreta.
  • Concordo com o amigo a cima! 
    Na informática as palavras "Sempre" e "todos" é sempre dificl de se lidar, pois para que possa se invalido basta apenas 1 tecnologia! 
    E  como não conhecemos todas as tecnologia, aê fica tudo complicado! 
  • Concordo. Não é "em qualquer sistema operacional", mas sim "em qualquer sistema operacional para o qual exista uma JVM". Posso criar um sistema operacional e se não existir uma JVM para ele não vai rodar Java.
  • A questão está CORRETA.
    A JVM há "POSSIBILIDADE" de rodar em QUALQUER sistema operacional. Desde que sejam instalados seus componentes.

  • Tipo da questão que você sabe que é errada e marca como certa rezando pra não ser pegadinha.

     

    O certo seria qualquer sistema operacional que possua uma máquina virtual java e não qualquer sistema operacional.

     

    Existe JVM para iOS? Se for por essa lógica poderíamos dizer que programas compilados para Atari rodam em qualquer sistema operacional. Basta que eles possuam um emulador(máquina virtual). Na teoria Java é tão portável quanto Pascal-P ou Visual Basic. A única diferença é que máquinas virtuais java existem para uma variedadade maior, mas longe de completa, de plataformas.

     

     

     

     


ID
345298
Banca
MOVENS
Órgão
Prefeitura de Manaus - AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

A arquitetura IJVM (Integer Java Virtual Machine) é caracterizada por não permitir que o endereço de memória seja visível diretamente no nível de instruções, fazendo com que o acesso a endereços seja efetivado por intermédio de ponteiros.

Com base nesse assunto, assinale a opção que NÃO apresenta uma área da IJVM.

Alternativas

ID
368158
Banca
FCC
Órgão
TCE-SP
Ano
2010
Provas
Disciplina
Programação
Assuntos

Os aplicativos Java “rodam” em diferentes ambientes. A tradução dos códigos Java (bytecode), para instruções específicas de cada sistema e dispositivo, é uma função do programa

Alternativas
Comentários
  • Esse gabarito está furadaço. Está afirmando que a resposta é ava Virtual Module (JVM), no entanto é ava Virtual Machine (JVM).
  • Com certeza!!  A maioria das questões de programação estão erradas.

    Prova FCC #Fail 
  • O gabarito correto é C, basta conferir na prova e gabaritos anexos.

ID
464176
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2011
Provas
Disciplina
Programação
Assuntos

Muito utilizada para desenvolvimento de aplicativos Web, a tecnologia Java tem como principal característica gerar aplicações que rodam em qualquer dispositivo que tenha acesso a Internet, utilizando, entre outros recursos, o software

Alternativas
Comentários
  • Resposta correta é a letra E.
    O Java utiliza se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação, responsável por “traduzir” (não é apenas isso) o que sua aplicação deseja fazer para as respectivas chamadas do sistema operacional no qual ela está rodando. Dessa forma, você ganha independência de sistema operacional. Ou, melhor ainda, independência de plataforma em geral: não é preciso se preocupar em qual sistema operacional sua aplicação está rodando, nem em que tipo de máquina, configurações etc. Repare que uma máquina virtual é um conceito bem mais amplo que o de um interpretador. Como o próprio nome diz, uma máquina virtual é como um computador de mentira: ela tem tudo que um computador tem. Em outras palavras, ela é responsável por gerenciar memória, gerenciar threads, a pilha de execução, etc. Sua aplicação roda sem nenhum envolvimento com o sistema operacional! Sempre conversando apenas com a Java Virtual Machine (JVM). Uma JVM isola a aplicação totalmente do sistema operacional. Se uma JVM termina abruptamente, só as aplicações que estavam rodando nela irão terminar: isso não afetará outras JVMs que estejam rodando no mesmo computador, nem afetará o sistema operacional. Bytecode é o termo dado ao código binário gerado pelo compilador Java (pois existem menos de 256 códigos de operação dessa linguagem, e cada “opcode” gasta um byte, dando origem ao nome bytecode). O compilador Java gera esse bytecode que, diferente das linguagens sem máquina virtual, vai servir para diferentes sistemas operacionais, já que ele vai ser “traduzido” pela máquina virtual.
  • Complementarmenete, há espaço para rever a arquitetura de uma JVM:

    A Maquina Virtual Java define várias áreas de dados em tempo de execução as quais são usadas durante a execução de um programa. Algumas dessas áreas de dados são criadas na inicialização da Máquina Virtual Java e são destruídas apenas quando a Máquina Virtual Java acaba seu processo. Outras áreas de dados são por threads. Áreas de dados por threads são criadas quando uma thread é criada e são distruidas quando a thread termina seu processo.

    - The pc Register : PROGRAM Counter REGISTER (Per-thread)- Cada thread tem seu próprio registro de contagem de Programa. Eles são atualizados depois de cada byteCode executado – os bytecodes se encontram na Method Area- . O pc Register é dividido basicamente em 4 partes:

    *frame: É uma referencia ao Frame, contem um ponteiro para o método em execução (O método em Execução é o primeiro método (Frame ) na Stack da thread)
    *optop: Contem um ponteiro para o top da operand Stack é usado para avaliar expressões aritméticas(Operand Stack do Frame Referente a Stack da thread )
    *pc - o contador de programa,contem O ENDEREÇO DO PROXIMO BYTECODE QUE SERÁ EXECUTADO(Metodo area)
    *vars - o registrador de variáveis,contem um ponteiro para as local variables. (Local Variables da Frame referente a Stack)
     
    Execution Enviroment = É o frame em execução
    Na stack temos Frames, em frames temos: - Operand Stack, Local Variables e uma Referência a Runtime Constant Pool.

ID
740413
Banca
CEPERJ
Órgão
PROCON-RJ
Ano
2012
Provas
Disciplina
Programação
Assuntos

O código de um programa de computador escrito na linguagem Java é compilado para uma forma intermediária de código, que é interpretada pelas Máquinas Virtuais Java (JVMs). Esse processo apresenta portabilidade como grande vantagem. Essa forma intermediária é denominada:

Alternativas
Comentários
  • O código de um programa de computador escrito na linguagem Java é compilado para uma forma intermediária de código denominada bytecode, que é interpretada pelas Máquinas Virtuais Java (JVMs). É essa característica que faz com que os os programas Java sejam independentes de plataforma, executando em qualquer sistema que possua uma JVM. Cada opcode tem o tamanho de um byte — daí o seu nome — e assim o número de diferentes códigos de operação está limitado a 256. Os 256 possíveis valores para códigos de operação não são todos utilizados. Na verdade, alguns dos códigos foram inclusive reservados para nunca serem implementados.
    Fonte: Wikipedia.

ID
783748
Banca
CESPE / CEBRASPE
Órgão
MEC
Ano
2011
Provas
Disciplina
Programação
Assuntos

Julgue os itens seguintes, relativos a tecnologias associadas a Java.

Pacotes RMI pertencentes ao java.rmi permitem visualizar dados entre redes, uma vez que possibilitam que objetos Java se comuniquem, mesmo quando executados em JVM distintas, pela chamada de métodos remotos.

Alternativas

ID
1099201
Banca
COPEVE-UFAL
Órgão
ALGÁS
Ano
2012
Provas
Disciplina
Programação
Assuntos

Analisando as afirmações seguintes, relacionadas à versão mais nova da máquina virtual Java,

I. A linguagem Java não permite a criação de classes com visibilidade privada (private).

II. A linguagem Java não permite a definição de métodos construtores com visibilidade privada (private).

III. A linguagem Java não permite a definição de pacotes com visibilidade privada (private).

IV. A linguagem Java não permite a utilização de polimorfismo paramétrico.

verifica-se que está(ão) correta(s)

Alternativas
Comentários
  • Eu uso direto construtores privates em classes singleton. Como é que a segunda frase está incorreta?

  • Só existem dois modificadores de acesso para classes em Java, são eles public e default, sendo "public" para classes visíveis por todo o sistema e "default" para classes com visibilidade a nível de pacote.

  • "Comentado por ulliane há 10 meses.

    Eu uso direto construtores privates em classes singleton. Como é que a segunda frase está incorreta?"

    Ulliane, a sentença afirma que "A linguagem Java não permite a definição de métodos construtores com visibilidade privada",  ou seja, está negando a que Java tem esta capacidade, por isso está errada. Ok?

    Quanto ao fato das classes privadas, realmente não há modificador de acesso Private para classes Java mas isso não quer dizer que elas não existam. Ok?  No Java é permitida a criação de classes tanto dentro do corpo de classes publicas e default quanto dentro do corpo de métodos, além disso, ainda existem as classes anônimas que são criadas dentro de chamadas à metodos (precisamente, na passagem de parâmetros), desta forma, dada a visibilidade limitada destas classes ao local de sua implementação, esta característica confere aspecto de modificador de acesso privado (Private) às classes daquele contexto.


  • Classes internas podem ser privadas

    Errei, mas vi isso aqui

    https://www.tutorialspoint.com/java/java_innerclasses.htm


ID
1115287
Banca
CESPE / CEBRASPE
Órgão
SUFRAMA
Ano
2014
Provas
Disciplina
Programação
Assuntos

Em relação a servidores web e de aplicação, julgue os itens subsecutivos.

Em uma JVM instalada no servidor, podem ser criadas diversas instâncias do servidor Tomcat utilizando-se a mesma porta.

Alternativas
Comentários
  • Pode-se criar várias instâncias, porém em portas diferentes.


    Alternativa: ERRADA
  • É normal vc ter uma JVM compartilhada, agora porta compartilhada complica

  • "Uma instancia do Tomcat é o componente de mais alto nível na hierarquia do container Tomcat. Apenas uma única instância do Tomcat pode existir em uma única JVM. Esta abordagem torna todas as outras aplicações Java, rodando numa mesma máquina física num servidor Tomcat, seguras caso o Tomcat ou a JVM trave. Podemos ter múltiplas instâncias numa mesma máquina física, porém como processos Java separados rodando em portas separadas."

    http://www.devmedia.com.br/introduzindo-o-servidor-de-aplicacao-apache-tomcat/27939#ixzz403mChg1x


ID
1122067
Banca
FCC
Órgão
SABESP
Ano
2014
Provas
Disciplina
Programação
Assuntos

Analise as afirmativas sobre métodos de implementação de linguagens de programação:

I. No processo de interpretação, a instrução é traduzida e executada no momento da execução do programa. Uma vantagem é que apenas partes do programa podem ser executados, mas há desvantagens: o processo é mais lento em relação ao processo de compilação e pode haver maior consumo de memória.

II. O processo híbrido combina a execução eficiente e a portabilidade de programas. A base é a existência de um código intermediário, mais fácil de ser interpretado e não específico de uma plataforma computacional. O método é dividido em duas etapas: compilação para um código intermediário e interpretação desse código. Um exemplo é o Java e a JVM.

III. O processo de compilação efetua a tradução integral do código fonte para o código de máquina. A execução é mais rápida porque não é necessário fazer nenhuma tradução intermediária. Para que o programa seja executado é necessário apenas o código executável. A vantagem é a total portabilidade do código executável, que pode ser executado em qualquer sistema operacional.

Está correto o que se afirma APENAS em

Alternativas
Comentários
  • Segundo a banca a assertiva I está CORRETA.

    Crítica para contribuição dos colegas:

    "I. No processo de interpretação, a instrução é traduzida e executada no momento da execução do programa". Ok, correto.

    "Uma vantagem é que apenas partes do programa podem ser executados", ok, correto.

    "mas há desvantagens: o processo é mais lento em relação ao processo de compilação e pode haver maior consumo de memória". Incorreto! O PROCESSO de interpretação NÃO é mais lento em relação ao PROCESSO de compilação. A EXECUÇÃO de um programa por meio de interpretação é que é mais lenta se comparada com a EXECUÇÃO de um programa compilado.

    Assim, o final dessa assertiva, poderia ser reescrito da seguinte forma:

    mas há desvantagens: o processo de interpretação é mais lento em relação a execução de um código idêntico compilado e pode haver maior consumo de memória

    Para contribuições...

  • Creio que a assertiva I esteja correta:


    O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto, ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido. Cada execução do programa precisa ser novamente traduzido e interpretado.


    O interpretador analisa sintaticamente e semanticamente o código, se estas duas etapas forem realizadas e executadas de forma correta o código está pronto para funcionar.



    Vantagens:


    - Correções e alterações são mais rápidas de serem realizadas;

    - Código não precisa ser compilado para ser executado;

    - Consomem menos memória.

    Desvantagens:


    - Execução é mais lenta do programa;

    - Necessita sempre ser lido o código original para ser executado;


    Creio que o processo de interpretação ser mais lento é por conta da obrigatoriedade de interpretar toda vez antes de executar o programa.



    Fonte: https://www.oficinadanet.com.br/artigo/1527/diferencas_entre_compiladores_e_interpretadores


ID
1226815
Banca
CESPE / CEBRASPE
Órgão
TJ-SE
Ano
2014
Provas
Disciplina
Programação
Assuntos

No que se refere à lógica e à programação, julgue os itens que se seguem.

Uma máquina virtual Java consegue traduzir classes Java e executar o programa nela contido, de acordo com o sistema em que a máquina virtual tenha sido instalada.

Alternativas
Comentários
  • Uma máquina virtual Java traduz bytecode, não classes Java, essa cespe é um problema, as vezes cobra o detalhe do detalhe, e nessa questão, joga genérico desse jeito e considera correta.

  • JVM traduz bytecode que é decorrente da compilação de classe java.

  • Acredito que a questão seja passível de anulação, uma vez que possa gerar dupla interpretação.

    O examinador não especificou em que condições estão essas classes, se estão em bytecode (podendo ser interpretadas pela JVM) ou se estão em código fonte (necessário primeiro a compilação pela JDK para gerar os bytecodes).

    Entretanto, vale ressaltar que, independente da forma como possam estar, elas não deixam de ser classes Java.

  • Outro ponto da questão que a meu ver ternaria a questão ERRADA... que fala: de acordo com o sistema em que a máquina virtual tenha sido instalada.

    JVM lê bytecodes (classes java) em qualquer sistema que ele esteja instalado...

    Tanto que é o lema do java é : Escreva uma vez, execute em qualquer lugar.


ID
1289170
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2012
Provas
Disciplina
Programação
Assuntos

Java é uma linguagem fortemente tipada, havendo regras de conversão específicas entre os tipos. Para facilitar o desenvolvimento de programas, entretanto, existem algumas conversões implícitas (typecast) que são feitas automaticamente pela JVM.

Um técnico de informática foi chamado para avaliar, com base nesses conceitos, um programa na linguagem Java cujas instruções estão na seguinte ordem:

1º - Integer meuInteger=2;
2º - int meuInt= new Integer(2);
3º - String umaString= meuInteger;
4º - String outraString= ""+meuInt;

Uma vez que as instruções foram colocadas em um único programa na ordem em que foram apresentadas, o técnico identificou que causará(ão) erro de compilação apenas a(s) seguinte(s) instrução(ões):

Alternativas

ID
1365676
Banca
FUNCAB
Órgão
PRODAM-AM
Ano
2014
Provas
Disciplina
Programação
Assuntos

Um programa na linguagem Java é compilado e gera um determinado arquivo com formato específico, que pode ser executado onde quer que a plataforma esteja presente, em qualquer sistema operacional subjacente. Enquanto que cada plataforma possui sua própria implementação da máquina virtual Java, existe somente uma especificação padronizada para a máquina virtual, proporcionando uma interface uniforme para aplicações em qualquer hardware, conhecida por Java Virtual Machine, ideal para uso na internet.

O arquivo e o correspondente formato são,respectivamente ,chamados:

Alternativas
Comentários
  • O código de um programa de computador escrito na linguagem Java é compilado para uma forma intermediária de código denominada bytecode, que é interpretada pelas Máquinas Virtuais Java (JVMs). É essa característica que faz com que os programas Java sejam independentes de plataforma, executando em qualquer sistema que possua uma JVM. O conteúdo de um arquivo .class é costumeiramente chamado simplesmente de "bytecode", e é carregado pela máquina virtual na primeira vez em que a classe é utilizada.


ID
1522063
Banca
CS-UFG
Órgão
AL-GO
Ano
2015
Provas
Disciplina
Programação
Assuntos

Na sintaxe da estrutura try-catch-finally, definida pela especificação da linguagem de programação Java versão 8 para o tratamento de exceção, verifica-se que

Alternativas
Comentários
  • Cuidado com a questão: as letras a, b e c são características do try-catch que estão disponíveis em todas as versões do Java. Um detalhe importante é que tanto o catch quanto o finally são opcionais. Você só precisa de um deles.

    a) Quando a JVM para por motivos, o programa inteiro é finalizado.

    b) Um dos objetivos do finally é liberar recursos, o catch é para o tratamento da exceção.

    c) O bloco catch captura as exceções e o finally é executado em seguida.

    d) você pode usar vários blocos catch com uma exceção ou um bloco catch com várias exceções, a segunda está disponível apenas no Java 8.

  • A parti do Java SE 7, foi introduzido o conceito de multicatch, ou seja, colocar várias exceções em um único catch.

    Versão anterior:

    catch (IOException ex)  {
    logger.log(ex);
    throw ex;
    }
    catch (SQLException ex) {
    logger.log(ex);
    throw ex;
    }

    A partir do Java SE 7:
    catch (IOException|SQLException ex) {
    logger.log(ex);
    throw ex;
    }

  • Multi-catch: catch para tratar vários tipos de exceção, se os corpos dos vários blocos catch forem idênticos: catch (Tipo1 | Tipo2 | Tipo3 e).

    Alternativa: D


ID
1643308
Banca
CESPE / CEBRASPE
Órgão
TCU
Ano
2015
Provas
Disciplina
Programação
Assuntos

Considere as seguintes informações referentes à configuração de servidores JBoss AS 7 (JBoss Application Server 7):

 I- Há dois modos de se iniciar e configurar o JBoss AS 7: domain ou server group; e standalone. O primeiro modo provê     alta disponibilidade e permite tanto a utilização do JBoss como controlador de domínio quanto a ocorrência de mais de uma instância em um mesmo ponto de controle, compartilhando políticas de gerenciamento em comum.
Ao contrário do modo domain, o segundo modo possibilita apenas uma instância do JBoss AS 7 em cada máquina.

II - Dois servidores JBoss AS 7 foram instalados em máquinas físicas distintas, utilizando, consequentemente, JVM também distintas, em modo remote standalone client.

III - Em um servidor C, foi instalada uma única instância do JBoss AS 7 no modo domain, e não houve mudanças em suas configurações-padrão no que se refere ao realm, sockets Binding e arquivos domain.xml e host.xml.

Com base nessas informações, julgue o item que se segue.

Embora o que se afirma em I esteja correto, em um grupo de servidores no modo standalone, não é possível configurar serviços que provejam alta disponibilidade.

Alternativas
Comentários
  • O que se afirma em I está incorreto, é sim possível iniciar mais de um servidor JBoss Standalone na mesma máquina, basta estarem em portas diferentes.

  • Errado.

    Há dois erros... um deles apontado pelo comentário abaixo.

    O outro é porque é possível criar um ambiente de alta disponibilidade utilizando o Standalone Mode.

     

    "Agora você deve estar se perguntando se é possível criar um ambiente de alta disponibilidade utilizando o Standalone Mode. A resposta é Sim!!! É possível criar um ambiente com recursos clusterizados, replicação de sessão e tudo mais. Se você já utilizou outras versões do JBoss, deve estar pensando em utilizar o famoso Farm Deployment, onde a aplicação era replicada para todos os nós do cluster. Esse recurso não existe no Standalone Mode, você terá que realizar o deploy em todos os nós um por um. Isso não é um problema se for 3 ou 4 instâncias mas imagine se forem umas 20 instâncias.  Uma solução para esse problema seria a utilização de ferramentas como o RHQ para realização de deploy em múltiplas instâncias o que acarretaria consumo de mais recursos e tempo. Para solucionar esse problema temos uma solução bem simples já embutida no servidor de aplicação o Domain Mode"

     

    https://developer.jboss.org/wiki/AdministrandoJBossApplicationServer7-Parte1

  • "no modo standalone, não é possível configurar serviços que provejam alta disponibilidade"

     

    standalone-full-ha.xml e stanalone-ha.xml: ambos proveem modo em CLUSTER.

     

    Quem se interessar pode estar acessando o link para maiores detalhes;

    Fonte: https://stackoverflow.com/questions/19524364/difference-between-standalone-xml-and-standalone-full-xml

     

    Go ahe@d!!!


ID
2229868
Banca
UFMT
Órgão
UFMT
Ano
2016
Provas
Disciplina
Programação
Assuntos

Sobre as linguagens de programação mais utilizadas na academia e indústria, marque V para as afirmativas verdadeiras e F para as falsas.

( ) Os códigos-fontes em Python devem ser compilados pelo compilador Python que pode ser utilizado em ambientes Windows e Linux.

( ) A linguagem de programação C++ surgiu para substituir a linguagem C, pois C é obsoleta e não é mais utilizada.

( ) Java é uma linguagem de programação orientada a objetos que é executada em uma máquina virtual Java (JVM).

( ) As linguagens de programação C++, Python e Java utilizam o modelo de orientação a objetos.

Assinale a sequência correta.

Alternativas
Comentários
  • Analise das opções:

     

    Os códigos-fontes em Python devem ser compilados interpretados  pelo compilador interpretador Python que pode ser utilizado em ambientes Windows e Linux. (Falsa)

     

    A linguagem de programação C++ surgiu para substituir a linguagem C, pois C é obsoleta e não é mais utilizada. (Falsa C++ foi a evolução da linguagem C em direção a POO )

     

    Java é uma linguagem de programação orientada a objetos que é executada em uma máquina virtual Java (JVM). (Correta)

     

    As linguagens de programação C++, Python e Java utilizam o modelo de orientação a objetos. (Correta)

  • rapaz, se eu falar pra vcs que python é sim compilado

    inclusive no mesmo estilo de java?

    tem um compilador python que gera bytecode

    a diferença é que esse processo é automático

    https://docs.python.org/3/library/py_compile.html

    An important aspect of Python’s compilation to bytecode is that it’s entirely implicit. You never invoke a compiler, you simply run a .py file. The Python implementation compiles the files as needed. This is different than Java, for example, where you have to run the Java compiler to turn Java source code into compiled class files. For this reason, Java is often called a compiled language, while Python is called an interpreted language. But both compile to bytecode, and then both execute the bytecode with a software implementation of a virtual machine.


ID
2383774
Banca
UFPA
Órgão
UFPA
Ano
2017
Provas
Disciplina
Programação
Assuntos

Sobre a linguagem de programação Java, analise as afirmativas seguintes:


I A JVM (Java Virtual Machine) é usada como interpretador, logo, Java é uma linguagem de script, além de ser uma linguagem orientada a objeto.


II A orientação em objetos em Java é opcional, assim como em C++ é possível escrever programas de forma estruturada.


III Para se utilizar uma classe pública de um pacote externo, uma das opções é importar a classe desse pacote.


Está(ão) CORRETA(S) 

Alternativas
Comentários
  • O java permite programação: Procedural, OO, Genérica e Funcional.


    Fonte: Deitel - Java como programar


    @papirobizurado


ID
2491159
Banca
FUNCAB
Órgão
MDA
Ano
2014
Provas
Disciplina
Programação
Assuntos

Existem linguagens de programação que utilizam de máquinas virtuais para permitir que programas possam rodar em máquinas com diferentes configurações. A máquina virtual da linguagem JAVA é conhecida como:

Alternativas
Comentários
  • Máquina virtual Java - MVJ (do inglês Java Virtual Machine - JVM) é um programa que carrega e executa os aplicativos Java, convertendo os bytecodes em código executável de máquina. A JVM é responsável pelo gerenciamento dos aplicativos, à medida que são executados.

    Graças à máquina virtual Java, os programas escritos em Java podem funcionar em qualquer plataforma de hardware e software que possua uma versão da JVM, tornando assim essas aplicações independentes da plataforma onde funcionam.

    Fonte: https://pt.wikipedia.org/wiki/M%C3%A1quina_virtual_Java


ID
2502142
Banca
IBFC
Órgão
EMBASA
Ano
2017
Provas
Disciplina
Programação
Assuntos

Java Virtual Machine (Máquina Virtual Java) é um programa que carrega e executa os aplicativos Java, convertendo:

Alternativas
Comentários
  • A JVM não entende código Java, e sim um código especifico chamado ByteCode, que é gerado pelo compilador Java (javac). Esse código é o que será traduzido pela Virtual Machine para o código de cada máquina em questão.


ID
2524888
Banca
FGV
Órgão
AL-MA
Ano
2013
Provas
Disciplina
Programação
Assuntos

Observe lista de arquivos e pastas a seguir.


1. lib.jar

2. $JRE_HOME/lib (basicamente, rt.jar)

3. O 'diretório corrente'

4. c:\libs\ant.jar

5. c:\libs\javacore.jar


Em referência a essa lista, dada a variável de ambiente:


classpath=c:\libs\ant.jar;c:\libs\javacore.jar;.


Assinale a alternativa que indica a ordem em que a máquina virtual Java (JVM) procurará por classes.

Alternativas
Comentários
  • Alguem poderia explicar isso?

  • O arquivo lib.jar não existe. O que podemos matar as letras C e E.

    ant.jar e javacore.jar existem nesta ordem. Então ficamos com as letras B e D.

    As classes Java padrão sempre são carregadas antes das classes apontadas no classpath.

    Com isso, ficamos com a letra D.


ID
2534320
Banca
FCC
Órgão
ARTESP
Ano
2017
Provas
Disciplina
Programação
Assuntos

Na arquitetura da JVM existe a JVM Memory que contém uma área de memória que armazena os objetos criados pela aplicação por meio do operador new ou qualquer outro método que crie um objeto. Essa área de memória é chamada de

Alternativas
Comentários
  • Áreas de memórias da JVM:

    Heap - armazena os objetos criados pela aplicação. Ex: objetos criados com new().

    Perm - armazena interfaces, classes, métodos e atributos estáticos.

     

    Fonte: http://www.devmedia.com.br/configurando-o-espaco-de-memoria-das-areas-heap-e-perm-da-jvm/37161

    Obs: Acredito que a questão foi retirada diretamente deste site.

  • Complementando o comentário de @Fredson, o Perm deixou de existir a partir do Java 8, e foi substituído pelo MetaSpace. O MetaSpace tem como principal vantagem poder aumentar seu tamanho automaticamente.

  • c-

    The JVM divides its memory into two main categories: heap memory and non-heap memory. Heap memory is the part with which people are typically the most familiar. It's where objects that are created by the application are stored. They remain there until they are no longer referenced and are garbage collected.

    https://docs.oracle.com/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/garbage_collect.html


ID
3343786
Banca
CS-UFG
Órgão
UFG
Ano
2019
Provas
Disciplina
Programação
Assuntos

O que ocorre, em tempo de execução, quando a Máquina Virtual Java executa uma aplicação Java que tenta criar um objeto via operador new, cuja implementação não é encontrada?

Alternativas
Comentários
  • História:

    Dois elaboradores da CESPE:

    - Você precisa fazer uma questão sobre Java!!!

    - EU?? MAS EU NÃO SEI NADA DE JAVA!!!

    - Não importa, eu quero uma questão sobre java na minha mesa amanha!!

    -oh céus o que eu farei ?? hmm ja sei, vou procurar uma exceção qualquer, vou traduzir e esta feita a questão!!

    "Thrown if the Java Virtual Machine or a ClassLoader instance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the new expression) and no definition of the class could be found."

    A fonte: https://docs.oracle.com/javase/7/docs/api/java/lang/NoClassDefFoundError.html

    é verdade esta história, eu estava lá! Sacanagem conosco né, masss paciência!

    Sobre a questão:

    a) Incorreta, pois esta relacionada a entrada e saída;

    b) Incorreta, relacionada a entrada de arquivos;

    c) Correta, copia e cola da questão, ops quer dizer: gabarito da questão;

    d) Incorreta, mas basicamente é para o mesmo fim que a resposta acima, entretanto as diferenças estão neste link: https://www.geeksforgeeks.org/classnotfoundexception-vs-noclassdeffounderror-java/ ( em inglês)

    https://docs.oracle.com/javase/7/docs/api/java/lang/ClassNotFoundException.html ( em inglês)

  • tragico!

  • Que questão é essa!


ID
3392974
Banca
INSTITUTO AOCP
Órgão
UFOB
Ano
2018
Provas
Disciplina
Programação
Assuntos

Sobre a linguagem de programação Java, julgue o item a seguir.


A JVM (Java Virtual Machine) permite que um mesmo código em Java rode em plataformas diferentes. Em outras palavras, há certa independência de sistema operacional, pois o código de uma JVM Windows é o mesmo de uma JVM Linux.

Alternativas
Comentários
  • Vamos dividir para conquistar:

    A JVM (Java Virtual Machine) permite que um mesmo código em Java rode em plataformas diferentes (CORRETO)

    .Em outras palavras, há certa independência de sistema operacional, pois o código de uma JVM Windows é o mesmo de uma JVM Linux. (INCORRETO)

    Pense comigo, se o código é o mesmo, bastava você instalar o .rpm em um sistemas Windows, ou instalar o .exe no linux.

    Talvez você conteste! Mas e se o código for o mesmo Max e apenas as extensões são diferentes? Respondo, é muito improvável que um código seja multiplataforma, tenha o mesmo código! mas com extensões diferentes, pois alguma adaptação você terá que fazer, mas isto foge ao escopo da questão.

  • Questão mal formulada, o código pode ser o mesmo sim, como a questão não usou termos como "sempre" , a questão deveria está correta.


ID
3540793
Banca
CPCON
Órgão
UEPB
Ano
2018
Provas
Disciplina
Programação
Assuntos

Sobre Java, considere as seguintes afirmações.


I- JVM (Java Virtual Machine) é uma especificação de uma máquina de computação abstrata que provê o ambiente de execução no qual o bytecode Java é executado. Estão disponíveis para diversas plataformas de hardware e software.

II- JRE (Java Runtine Environment) é uma implementação da .JVM.

III- JDK (Java Development Kit Java) é um conjunto ferramentas de desenvolvimento de software em Java que inclui a JRE.



Está o que se afirma em

Alternativas

ID
3542938
Banca
ACEP
Órgão
Prefeitura de Aracati - CE
Ano
2019
Provas
Disciplina
Programação
Assuntos

Na plataforma de programação Java, existe uma abstração de uma arquitetura de computação que é caracterizada por um conjunto de instruções e recursos de memória que garantem a independência de hardware e de sistema operacional para os produtos compilados da linguagem. Este recurso específico é denominado:

Alternativas
Comentários
  • Através da JVM, não importa em qual sistema operacional um programa foi escrito, seja Windows, Linux ou Mac OS, ele irá rodar sem a necessidade de modificações.

    Para aqueles que desejam desenvolver aplicações, é necessário instalar o JDK (Java Development Kit), pacote que inclui tudo o que é necessário para escrever aplicações e também o JRE para poder rodá-los após finalizá-los.

    Fonte:https://canaltech.com.br/software/O-que-e-Java-JRE-JVM-e-JDK/


ID
3723037
Banca
INSTITUTO AOCP
Órgão
UFPB
Ano
2019
Provas
Disciplina
Programação
Assuntos

O JDK inclui um software denominado depurador, o qual permite monitorar a execução dos seus aplicativos para que seja possível localizar e remover erros de lógica. Sobre o depurador, assinale a alternativa correta.

Alternativas
Comentários
  • Informações úteis para responder a questão:

    Erros de sintaxe impedem a compilação do código, uma vez que será avaliado se o conjunto de palavras está correto, se pertencem a linguagem corrente, se falta o famoso o clássico ponto e vírgula (depende da linguagem). Assim, sabemos que a letra E está errada. Vamos para a próxima informação...

    Erros lógicos ou semânticos não impedem a compilação, já que, sintaticamente, está escrito correto. Esse erro consiste na escrita de uma lógica objetivando um dado resultado, no entanto, o resultado obtido é diferente do esperado. Trocando em miúdos, quer dizer que: se você escreveu seu código assim, 2 * 5 + 1, esperando obter o valor 10, bom meu amigo, a lógica implementada está errada. Você pode compilar seu código 1.001 vez, o depurador vai te apresentar o mesmo resultado se você não dá aquela esmiuçada no código. Ele não irá apresentar erro algum. Assim, eliminamos a B e C.

    A letra D é errada e apresenta uma ideia oposta. É possível depurar pequenos trechos do código, pode-se inserir pontos de interrupção (breakpoints). Veja que é quase, senão bem oposta a letra A que é o gabarito da questão.

    GABARITO: A


ID
3744349
Banca
FEPESE
Órgão
CELESC
Ano
2018
Provas
Disciplina
Programação
Assuntos

Qual o nome da técnica que o Java utiliza para implementar os tipos genéricos respeitando códigos legados? Isto é, tornando o código genérico compatível com códigos não genéricos preexistentes, de modo que alterações na sintaxe da linguagem Java ou em JVM não invalidem códigos mais antigos?

Alternativas
Comentários
  • Erasure

    Após verificar em tempo de compilação se a sintaxe do código está de acordo com as específicações de Generics e Java, o compilador irá gerar o código em Java byte-codes, mas sem a sintaxe generics, convertendo isso para o que é chamado de raw type. Todo o tipo de informação relacionada ao generics é removida durante essa fase, o nome desta operação é chamada Type Erasure.

    Fonte:http://www.mauda.com.br/?p=468

  • Quando o compilador traduz o método genérico em bytecodes Java, ele remove a seção de parâmetro de tipo e substitui os parâmetros de tipo por tipos reais. Esse processo é conhecido como erasure. Por padrão, todos os tipos genéricos são substituídos pelo tipo Object. 

    Alternativa: B


ID
5076100
Banca
CESPE / CEBRASPE
Órgão
Prefeitura de Barra dos Coqueiros - SE
Ano
2020
Provas
Disciplina
Programação
Assuntos

A máquina virtual do Java (JVM) utiliza uma tecnologia especificamente para aumentar o desempenho da aplicação, identificando códigos que serão muito executados, normalmente dentro de loops. Essa tecnologia é chamada de

Alternativas
Comentários
  • Em outras palavras, a banca cobrou do candidato o conceito de programação JIT (just-in-time). Para ficar mais rápido, o java "observa" o que o usuário mais usa e joga nas zonas quentes (hotspot). E a partir daí ele busca de lá para que "rode" mais rápido

  • A questão, na verdade, quer dizer o seguinte:

    Se há o loop na rede (que é a inconsistência da rota do pacote - é como se o pacote ficasse zanzando na rede, sem destino algum), o Java, utiliza do serviço da Zona Quente/HotSpot - que são aqueles pontos de acesso de Wifi - para manter o usuário em alto desempenho de utilização. Ou seja, observa o que o usuário está utilizando mais, naquele momento, e joga ele no Wifi do Hotspot, pra que o serviço continue com qualidade de roteamento.

    Se entendi bem, o Hotspot, nessa situação de loop de rede, é a alternativa que a máquina virtual do Java encontra para manter o bom desempenho da aplicação utilizada.

    Me corrijam se houver erros na interpretação da questão.

    abs do Vila

  • Resolvi sem teoria, apenas no chute, se usa mutas vezes está quente(HOT). Prossigamos!!

ID
5164183
Banca
VUNESP
Órgão
TJM-SP
Ano
2021
Provas
Disciplina
Programação
Assuntos

No conjunto de instruções do bytecode Java, executado na JVM (Java Virtual Machine), o mnemônico if_icmpne representa uma instrução que

Alternativas
Comentários
  • IF_ICMPNE significa If Integer Compare Not Equal - Compara dois valores inteiros no topo da pilha e efetua um salto se esses valores são diferentes.

  • Avaliar a habilidade do candidato em adivinhar mnemônicos


ID
5445553
Banca
VUNESP
Órgão
EsFCEx
Ano
2021
Provas
Disciplina
Programação
Assuntos

O método finalize() deve ser evitado na implementação de uma classe Java, pois

Alternativas
Comentários
  • O coletor de lixo em Java, ao determinar que não há mais referências apontadas a um objeto, invoca um método da classe java.lang.Object desse objeto.  questão tirada do livro Deitel 8° edicao
  • Gabarito D

    Você nunca deve usar o método FINALIZE(), porque ele pode causar muitos problemas e não há certeza se ele alguma vez será chamado antes de um programa terminar.

    A intenção original de FINALIZE() era permitir que o coleto de lixo executasse a faxina de término em um objeto um pouco antes de reivindicar a memória ao objeto.

    Agora, o que é considerado uma boa prática que qualquer classe que usa os recursos do sistema, como arquivos em disco, forneça um método que os programadores possam chamar para liberar os recursos quando eles não são mais necessários em um programa. EX: CLOSE() ou DISPOSE()

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

    Pág 265


ID
5585719
Banca
UFSC
Órgão
UFSC
Ano
2016
Provas
Disciplina
Programação
Assuntos

Assinale a alternativa que indica CORRETAMENTE a tecnologia utilizada para monitorar e gerenciar aplicações Java, através da JVM.

Alternativas
Comentários
  • JMX (Java Management Extensions) é uma API padrão para gerenciamento e monitoração de recursos

    SNMP e SMTP são protocolos de rede

    Javamon provavelmente é um digimon que gosta de java