SóProvas



Questões de Java


ID
4987
Banca
CESGRANRIO
Órgão
TCE-RO
Ano
2007
Provas
Disciplina
Programação
Assuntos

Observe o fragmento de código JAVA a seguir.

public class prova {

    public prova() { }

    public static int d(int x) {

        return x*2;

    }

    public static int e(int x) {

        return x*5;

    }

    public static int fn(int x) {

        if (x<1)
            return 0;
        else
           return 4+fn(x-1);

    }

    public static int g(int y) {

        return 10+fn(y)+e(y)+d(y);

    }

    public static void main(String[] args) {

        System.out.println(g(5));

    }

}

 

A execução do método main apresentará a saída:

Alternativas
Comentários
  • Correta é a letra A.

    10 + (4 + 4 + 4 + 4 + 4 + 0) + 25 + 10 = 35 + 20 = 65

  •  

    Resposta A = 65; fn(0) = 0 fn(1) = 4 + fn(0) = 4 fn(2) = 4 + fn(1) = 4 + 4 = 8 fn(3) = 4 + fn(2) = 4 + 8 = 12 fn(4) = 4 + fn(3) = 4 + 12 = 16 fn(5) = 4 + fn(4) = 4 + 16 = 20 10 + 20 + 25 + 10 = 65


ID
5272
Banca
CESGRANRIO
Órgão
REFAP SA
Ano
2007
Provas
Disciplina
Programação
Assuntos

Em JAVA, o modificador utilizado para definir um método de classe é o:

Alternativas
Comentários
  • static significa que o método podera ser acessa sem uma estancia da classe.

    Por exclusão da para fazer essa questão, pois as outras opções não são ultilizadas no java.
  • a) corretob) utilizado para indicar que a classe implementa uma certa interfacec) nao existed) nao existee) operador utilizado para verificar se um objeto é uma instância de uma determinada classe. No java os modificadores de visibilidade de um método são:publicprotectedprivatepackage default (quando não utilizamos nenhum dos três acima)O modificador utilizado para definir se um método/atributo pertence à classe é o static.

ID
5545
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2006
Provas
Disciplina
Programação
Assuntos

Sobre a declaração e uso de classes, métodos e atributos no Java, é correto afirmar que:

Alternativas
Comentários
  • Numa mesma classe podemos ter dois métodos com o mesmo nome mas com parametros diferentes.
  • questão idêntica à questão Q1880.
  • Letra A (CORRETA) - conceito de métodos sobrecarregados, possuem o mesmo nome, mas os argumentos são diferentes.


ID
5647
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2006
Provas
Disciplina
Programação
Assuntos

Sobre a declaração e uso de classes, métodos e atributos no Java, é correto afirmar que:

Alternativas
Comentários
  • a) CORRETA, pois em Java existe a sobrecarga de método, onde os nomes dos métodos podem ser iguais mas os parametros devem ser diferentes.

    b) ERRADA, a cláusa this além de acessar atributos da classe mãe também acessa atributos da própria classe filha.

    c) ERRADA, a classe filha também pode sobrepor métodos e atributos do tipo projected.

    d) ERRADA, ela é implementada através da instrução "extends". A instrução "implements" é para implementar interfaces.

    e) ERRADA, as interfaces não podem ser implementadas.
  • Na verdade a solução da letra A não é conceito do Java e sim conceito de orientação a objeto. Vc pode declarar dois métodos com o mesmo nome, desde que método tenha assinaturas diferentes.


ID
10459
Banca
ESAF
Órgão
CGU
Ano
2006
Provas
Disciplina
Programação
Assuntos

As unidades concorrentes em Java são objetos que incluem um método chamado run, cujo código pode estar em execução concorrente. Uma das maneiras de se definir uma classe cujos objetos podem ter métodos concorrentes é definir uma

Alternativas

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

Observe o seguinte programa JAVA:

package p;

public class exemplo {

public exemplo() {

}

public static void main(String[] args) {
try {
      System.out.println(1/0);
      System.out.println("M");
     }
catch (ArithmeticException ex2) { 
       System.out.print("X");
     }
catch (Exception ex3) {
       System.out.print("Y");
     }
finally {
       System.out.print("Z");
      }
System.out.print("F"); 
   }
}

A saída desse programa é

Alternativas
Comentários
  • Essa questão é muito interessante para entender o funcionamento de Exceções pois envolve o conhecimento de Try, Catch e FinallyO bloco Try impede que a execução de um método seja interrompida quando uma Exceção ocorrer, ou seja, define o escopo no qual o método é capaz de capturar a Exceção. A divisão 1/0, contida no bloco Try, gerou uma ArithmeticException que foi capturada pelo primeiro catch, imprimindo "X". Vale lembrar que após a exceção ser capturada por algum catch, os demais são desconsiderados.A seguir a premissa Finally foi executada, imprimindo "Z". A cláusula Finally garante que um código será executado sempre independente de uma Exceção ocorrer ou não.Após o Finally o método continua sua execução, imprimindo F.Saída: XZF Letra D
  • Ao analisar o código superficialmente, podemos ter certeza que duas instruções serão executadas independente de qualquer coisa que esteja acontecendo antes no código. São elas: 
    • A instrução que está depois do "finally": System.out.print("Z"); (finally é sempre executado se ele existir num bloco try/catch)
    • A última instrução: System.out.print("F");  (não depende de mais nada para ser executada).
    Portanto, "Z" e "F" aparecerão na tela de qualquer maneira, sendo assim, podemos eliminar as letras B e C.
    Sobraram as letras A, D e E. perdebemos que "X" aparece nas três possibilidades, "X" pertence a um bloco catch, ou seja, houve uma exceção no código e o bloco try nao foi executado (eliminamos letra A). Também sabemos que somente um catch pode ser capturado por vez, e o catch nessa ocasição foi o catch que captura a exceção ArithmeticException (eliminamos letra E). sobrou a letra D como resposta!
  • d

    Em try catch, o try é o codigo inicial, o catch é o codigo que espera uma exceção especifica no try. Exemplos de exceções sao ArrayIndexOutOfBoundsException e ArithmeticException of qual é a divisao por 0. Porque somente 1 catch é realizado se o try nao funcionar, divisao por 0 esta previsto no ArithmeticException, enquanto que o finally sempre é executado, compondo as opções em d


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
27322
Banca
FCC
Órgão
TRE-SE
Ano
2007
Provas
Disciplina
Programação
Assuntos

Em Java, a passagem de dados de um formulário do cliente para o servlet pode ocorrer por meio do uso do método

Alternativas
Comentários
  • A passagem de dados de um formulário do cliente para o servlet pode se dar através do método getParameter(), que permite obter uma string com o valor do campo especificado. Por exemplo, se um formulário HTML especificasse um campo de texto para entrada do nome do usuário, como em < INPUT type="text" name="username" size=20 >esse valor poderia ser obtido no código do servlet do exemplo anterior através da invocação String nome = solicitacao.getParameter("username"); Além de getParameter(), o método getParameterValues() retorna um arranjo de strings com todos os valores de um determinado parâmetro. Outros métodos são oferecidos para obter informação das aplicações que estão invocando o servlet, tais como getRemoteHost(), getServerName(), getServerPort() e, especificamente para HTTP, getHeaderNames() e getHeader(). FONTE: http://www.dca.fee.unicamp.br/cursos/PooJava/servlets/httpserv.html

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
28546
Banca
CESGRANRIO
Órgão
DECEA
Ano
2006
Provas
Disciplina
Programação
Assuntos

Em Java, a palavra-chave que implementa uma relação de herança de classes é:

Alternativas
Comentários
  • A Palavra que mostra a relação de herança no java é extends e no delphi é a letra c (inherits)
  • Extends é quando uma classe herda de outra. Quando uma classe herda uma interface, usa implements. 


ID
31090
Banca
FCC
Órgão
TRE-MG
Ano
2005
Provas
Disciplina
Programação
Assuntos

Os métodos Java que não retornam valores devem possuir no parâmetro tipo-de-retorno a palavra

Alternativas
Comentários
  • Static = Retornará um arquivo estátivo que, não poderá sofrer alterações.public = arquivos públicos que poderão ser utilizados por todas funções.void = uma função que realiza uma operação.main = retorna a função principal do programa, ao qual irá ser a execução do programa.string args = é utilizado como parâmetro na função main.
  • Só retificando o comentário do noss amigo de baixo:A palavra void, no caso desta questão, tem o mesmo significado de vazio, e é usado na assinatura de um método como tipo de retorno, quando este método não retornar nenhum valor.
  • Corrigindo o colega Janes. Na assinatura de um método, é utilizado o nome do método, tipos e ordem dos paramêtros. O valor de retorno não é utilizado.

    http://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917
  • c-

    a palavra-chave void é usada como um tipo de return de uma funcao, a implicacao sendo que nenhum valor é retornado.


ID
31093
Banca
FCC
Órgão
TRE-MG
Ano
2005
Provas
Disciplina
Programação
Assuntos

A seqüência de etapas para implementação de um programa Java é

Alternativas
Comentários
  • Falando em uma linguagem simples:
    Codificação: é quando o programador escreve o programa (o código fonte ou "source code"); sua extensão é, via de regra, .java;
    Compilação: é quando o compilador java (javac.exe) verifica se o programador escreveu corretamente o programa (sintaticamente falando); O arquivo gerado fica com a extensão .class;
    Interpretação: ocorre quando o java lê os comandos do programa ; estes comandos são "traduzidos" para uma linguagem que o computador possa entender;
    Execução: é quando o computador executa os comandos, já na sua linguagem.
  • d) codificação, compilação, interpretação e execução.
  • Codificação: programa ou código fonte se torna .java

    Compilação: O arquivo gerado fica com a extensão .class

    Interpretação: Linguagem que o computador possa entender.

    Execução: Computador executa os comandos.


ID
31096
Banca
FCC
Órgão
TRE-MG
Ano
2005
Provas
Disciplina
Programação
Assuntos

Os erros gerados durante a execução de um programa Java devem ser controlados com uma estrutura que pode combinar o uso dos blocos

Alternativas
Comentários
  • Try: seção onde ficam os comandos que podem causar o erro;
    Catch: seção onde o erro é tratado;
    Finally: seção onde os tratamentos finais da rotina são executados. Esta seção quando implementada é sempre executada, com ou sem a ocorrência de erro. Normalmente usada para liberar recursos consumidos durante o try.
    Combinações: Try+catch, try+finally, try+catch+finally.
  • e) try e catch, try e finally ou try, catch e finally.

ID
31099
Banca
FCC
Órgão
TRE-MG
Ano
2005
Provas
Disciplina
Programação
Assuntos

Uma janela pode ser dividida, em cinco regiões distintas: superior, esquerda, centro, direita e inferior, pelo gerenciador de layout do Java denominado

Alternativas
Comentários
  • BorderLayout é uma implementação de LayoutManager2 adequado para janelas com até cinco componentes. Ele permite arranjar os componentes de um container em cinco regiões, cujo posicionamento é representado pelas constantes BorderLayout.NORTH, BorderLayout.SOUTH, BorderLayout.EAST, BorderLayout.WEST e BorderLayout.CENTER
  • CardLayout: empilha varios componentes de maneira que a apenas o topo seja visivel, permite navegar entre eles.

    Flowlayout: componentes são colocados sequencialmente (da esquerda para direita) na ordem em que foram adicionados.

    Gridlayout: organiza componentes em linhas e colunas de tamanho e ordem pré-definidas.

    Borderlayout: organiza os componentes em 5 regiões.


ID
43690
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2008
Provas
Disciplina
Programação
Assuntos

Considere o seguinte código de um método de uma classe Java:

          public boolean primo( int x ) {

                           if (x == 1 || x == 2) {
                                return true;
                           }
                           int raiz = (int) Math.sqrt((double)x);
                           for (int i = 2; i <= raiz; i++) {
                                  if (x % i == 0) {
                                         return false;
                                  }
                           }

                            return true;
                     }
          }

Qual a complexidade ciclomática do método?

Alternativas
Comentários
  • KD O CÓDIGO DA QUESTÃO? É ESSA TABELA?
  • Apresenta uma tabela, na verdade seria o correto:Considere o seguinte código de um método de uma classe Java:public boolean primo(int x) { if (x == 1 || x == 2) { return true; } int raiz = (int) Math.sqrt((double)x); for (int i = 2; i <= raiz; i++) { if (x % i == 0) { return false; } } return true; }}Qual a complexidade ciclomática do método?
  • Uma das formas de se obter a complexidade ciclomática é calculando-se a quantidade de nós predicados (nós que contêm condições) e somar 1 ao resultado obtido. Se o nó predicado possuir mais de uma condição, cada uma delas deve ser computada. Assim:- if (x == 1 || x == 2) ==> 2 condições- for (int i = 2; i <= raiz; i++) ==> 1 condição- if (x % i == 0) ==> 1 condiçãoComplexidade ciclomática: (2 + 1 + 1) + 1 = 5
  • O link abaixo ajuda a efetuar os cálculos:
    http://www.youtube.com/watch?v=XuOSbbFTgGA

    F
    iz o desenho e deu 5 mesmo.
    https://www.dropbox.com/s/7870y0nr8v9hgo8/ciclomatica.jpg

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

O que imprimirá a linha de código em Java a seguir?

System.out.println("1+1+1="+1+1+'1');

Alternativas
Comentários
  • Em Java o "+" serve para concatenar string.
  • Em java, utilizando-se o método System.out.println, caso existam atributos númericos entre caracteres do tipo STRING e CHAR, toda e qualquer operação que exista entre estes atributos (STRING e CHAR) será desprezada.
  • resolvendo:primeira parte do que será impresso:tudo o que estiver entre "aspas":o comando system.out.println vai imprimir:1+1+1=segunda parte do que será impresso:o comando system.out.println vai imprimir:11 ( ou seja, vai imprimir dois caracteres "1" em sequencia );terceira parte do que será impresso, de forma literal, pois está entre aspas simples: 1concatenando as 3 partes que serão impressas, temos:1+1+1=111

  • No caso do 1+1, que está entre "1+1+1="+  e  +'1' os números 1 serão concatenados. Isto acontece pois o operador + serve para concatenar Strings nesta situação da questão. Se tivesse qualquer outro operador aritmético que não fosse o +, ele realizaria a operação. A soma só ocorreria se a operação estivesse entre parêntes -> ("1+1+1="+(1+1)+'1');

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

Em Java, a atribuição composta x += y é equivalente a x =(T)(x + y), onde T é o tipo de x. Com base nesta premissa, considere as duas linhas de programa a seguir.

x += y;
x = x + y;

A primeira linha compilará, e a segunda linha irá gerar um erro em tempo de compilação, se x e y forem declarados, respectivamente, como:

Alternativas
Comentários
  • Não é possível converter o tipo int, de 32 bits, em um tipo short, de 16 bits
  •     * Um byte pode ser convertido em um short, int, long, float ou double
        * Um short pode ser convertido em um int, long, float ou double
        * Um char pode ser convertido em um int, long, float ou double
        * Um int pode ser convertido em um long, float ou double
        * Um long pode ser convertido em um float ou double
        * Um float pode ser convertido em um double

    Erro na questão:
    public class Main{
        public static void main(String[] args) {       
            short x = 50;
            int y = 10;       
            x += y;
            x = x + y; //  Não pode convert int para short
        }
    }

  • A alternativa E tbm dá erro de compilação:

    incompatible types
      required: int
      found:    java.lang.String
  • Na verdade pode ser convertido, mas apenas se fizer o cast explicitamente
  • A conversão para um tipo diferente necessitaria de uma conversão explícita, o que poderia levar, por exemplo, a uma truncagem de dados.
  • Comentando as opções:

    a) short e int (certo: primeira linha compila, mas a segunda não)

    x += y;  ==> equivalente a x = (short) (x+y)

    não há problema nesta construção, pois é possível converter de int para short.
     
    x = x + y; 

    não compila, pois o resultado da soma deve ser convertido para short.

    Esta é a opção correta, pois a primeira linha compila, mas a segunda não.

     

    b) int e short (errado: ambas as linhas compilam corretamente)

    O tipo int é "superior" ao short, não sendo necessário efetuar a conversão.


    c) int e char (errado: ambas as linhas compilam corretamente)

    Ao executar a soma, será considerado o código ASCII do caractere utilizado.

    Ex.:


    int x = 1;
    char y = 'a';


    x += y; (resultado: 98)
    x = x + y; (resultado: 98)


    Em ambas as instruções será obtido o valor 98, pois o código do caractere 'a' na tabela ASCII é 97.


    d) String e int  (errado: ambas as linhas compilam corretamente)

    Neste caso o valor do int será convertido para String e concatenado com a String original.

    Ex.: 


    String x = "a";
    int y = 1;

    x += y; (resultado: a1)
    x = x + y; (resultado: a1)


    e) int e String (errado: as duas linhas apresentarão erro de compilação)

    x += y; (erro: o operador "+=" não está definido para os tipos int e String)
     
    x = x + y; (erro: não é possível converter de String para int)
  • Veja os comentários no link a seguir:

    http://www.questoesdeconcursos.com.br/questoes/a6acbb08-75

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

Aplicações J2EE completas são empacotadas em arquivos EAR e incluem um arquivo deployment descriptor de nome application.xml. Além deste arquivo, cada fabricante de container J2EE, em geral, prevê a existência de um segundo deployment descriptor, opcional, com diretivas específicas do fabricante. No caso do Oracle Application Server, em sua versão 10.1.3.x, o nome do referido arquivo é

Alternativas
Comentários
  • Atenção: OC4J é o nome do application server da Oracle, na versão 10.1.3.xOC4J significa "Oracle Containers for J2EE"; porém a questão pede o nome do arquivo "descriptor" para que se consiga utilizar o OC4J.o nome deste arquivo é "orion-application.xml ".veja emhttp://www.oracle.com/technology/tech/java/oc4j/1013/whitepapers/OC4J-SERVLET-FAQ-10131.pdf

ID
56677
Banca
CESPE / CEBRASPE
Órgão
ANAC
Ano
2009
Provas
Disciplina
Programação
Assuntos

Com relação aos conceitos de programação orientada a objetos
e sua implementação na linguagem Java, julgue os próximos
itens.

Na programação orientada a objetos, o conceito de herança pode ser utilizado mediante a criação de subclasses a partir de classes anteriormente criadas. Em Java, as subclasses herdam as variáveis de instância e os métodos de instância da superclasse, podendo ter acesso a todos os membros private e protected da referida superclasse.

Alternativas
Comentários
  • É errado pois uma subclasse não tem acesso aos métodos private da superclasse.
  • A questão avacalhou tudo no final.Temos acesso somente a membros public(+), protected(#) e package(~).Podemos até ter uma visibilidade do membro private, mas acesso a ele jamais!

ID
56683
Banca
CESPE / CEBRASPE
Órgão
ANAC
Ano
2009
Provas
Disciplina
Programação
Assuntos

Com relação aos conceitos de programação orientada a objetos
e sua implementação na linguagem Java, julgue os próximos
itens.

Em Java, se uma subclasse é derivada de uma superclasse com um método abstract sem fornecer uma definição para esse método abstract na subclasse, esse método permanece abstract e os objetos instanciados a partir dessa subclasse não poderão utilizar o método abstract.

Alternativas
Comentários
  • "...na subclasse, esse método permanece abstract..." O que obriga a subclasse a ser abstract.Talvez não tenha compreendido corretamente o enunciado, mas parece-me que o que está errado é o fato de termos objetos instanciados a partir da subclasse que é abstract, pois possui ela ainda possui um método abstract.
  • Não sou especialista em java, mas até onde sei, quando você herda uma classe com método abstract você é obrigado a implementar esse método!
  • Quando uma subclasse herda um método abstract, há duas opções: - A classe é declarada abstract, portanto não pode ser instanciada; ou - A classe é concreta, sendo obrigatória a implementação do método herdado.No caso da questão, a classe herdou o método e não implementou, então ela precisa ser abstrata, e não pode ser instanciada.
  • Uma classe abstract define uma interface comum para os vários membros de uma hierarquia de classe. A classe abstract contém métodos que serão definidos nas subclasses. Todas as classes na hierarquia podem utilizar essa mesma interface por meio de polimorfismo.

    Apesar de não podermos instanciar objetos de superclasses abstract, podemos declarar referências para superclasses abstract. Podem-se usar essas referências para permitir manipulações polimórficas de objetos de subclasse quando esses objetos são instanciados a partir de classes concretas.

    Se uma subclasse é derivada de uma superclasse com um método abstract e se nenhuma definição é fornecida na subclasse para esse método abstract (isto é, se ele não é sobrescrito na subclasse), ele permanece abstract na subclasse. Conseqüentemente, a subclasse também é uma classe abstract e deve ser explicitamente declarada como uma classe abstract [Deitel].

  • ERRADO.
     Em Java, se uma subclasse é derivada de uma superclasse com um método abstract sem fornecer uma definição para esse método abstract na subclasse, esse método permanece abstract e os objetos instanciados a partir dessa subclasse não poderão utilizar o método abstract.

    Classe que contenha um método abstrato, ou que seja derivada de alguma classe que contenha um metodo abstrato mas não complete sua declaração, NÃO PODE SER INSTANCIADA.


    {}ao
    Bons Estudos
    Marcelo
  • O enunciado dessa questão deixou-me confusa. O verbo utilizado pela banca foi "definir", não "implementar". Na minha opinião, são duas coisas diferentes e em outras questões do CESPE percebi que o sentido também é diferente. Uma interface, por exemplo, define um método abstrato, porém não o implementa.


ID
58939
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

1 class Bicycle {
2 int cadence = 0;
3 int speed = 0;
4 int gear = 1;
5 void changeCadence(int newValue) {
6 cadence = newValue;
7 }
8 void changeGear(int newValue) {
9 gear = newValue;
10 }
11 void speedUp(int increment) {
12 speed = speed + increment;
13 }
14 void applyBrakes(int decrement) {
15 speed = speed - decrement;
16 }
17 void printStates() {
18 System.out.println("cadence: "+cadence+" speed: "+speed+" gear: "+gear);
19 }
20 }
21 class BicycleDemo {
22 public static void main(String[ ] args) {
23 // Cria dois objetos Bicycle diferentes
24 Bicycle bike1 = new Bicycle( );
25 Bicycle bike2 = new Bicycle( );
26 // Invoca os métodos desses objetos
27 bike1.changeCadence(50);
28 bike1.speedUp(10);
29 bike1.changeGear(2);
30 bike1.printStates();
31
32 bike2.changeCadence(50);
33 bike2.speedUp(10);
34 bike2.changeGear(2);
35 bike2.changeCadence(40);
36 bike2.speedUp(10);
37 bike2.changeGear(3);
38 bike2.printStates( );
39 }
40 }

Considerando o código Java acima, julgue os itens a seguir, acerca da programação orientada a objetos.

O código a seguir, caso fosse inserido entre as linhas 20 e 21, permitiria criar uma classe que herdasse as características da classe Bicycle.
class MountainBike inherit Bicycle {
// inserir nesse ponto novos campos e métodos
// relativos a uma mountain bike.
}

Alternativas
Comentários
  •  O mecanismo de herança é alcançado utilizando a palavra-chave extends e não inherit.


ID
58942
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

1 class Bicycle {
2 int cadence = 0;
3 int speed = 0;
4 int gear = 1;
5 void changeCadence(int newValue) {
6 cadence = newValue;
7 }
8 void changeGear(int newValue) {
9 gear = newValue;
10 }
11 void speedUp(int increment) {
12 speed = speed + increment;
13 }
14 void applyBrakes(int decrement) {
15 speed = speed - decrement;
16 }
17 void printStates() {
18 System.out.println("cadence: "+cadence+" speed: "+speed+" gear: "+gear);
19 }
20 }
21 class BicycleDemo {
22 public static void main(String[ ] args) {
23 // Cria dois objetos Bicycle diferentes
24 Bicycle bike1 = new Bicycle( );
25 Bicycle bike2 = new Bicycle( );
26 // Invoca os métodos desses objetos
27 bike1.changeCadence(50);
28 bike1.speedUp(10);
29 bike1.changeGear(2);
30 bike1.printStates();
31
32 bike2.changeCadence(50);
33 bike2.speedUp(10);
34 bike2.changeGear(2);
35 bike2.changeCadence(40);
36 bike2.speedUp(10);
37 bike2.changeGear(3);
38 bike2.printStates( );
39 }
40 }

Considerando o código Java acima, julgue os itens a seguir, acerca da programação orientada a objetos.

Os comandos das linhas 24 e 25 implementam uma chamada a construtores ou instâncias. Uma vez que possuem nome distinto do nome da classe, a assinatura de um construtor não deve possuir nenhum tipo de retorno, nem mesmo void.

Alternativas
Comentários
  • Construtores são métodos especiais chamados pelo sistema no momento da criação de um objeto. Eles não possuem valor de retorno, porque você não pode chamar um construtor para um objeto, você só usa o construtor no momento da inicialização do objeto. Construtores representam uma oportunidade de inicializar seus dados de forma organizada, imagine se você esquece de inicializar corretamente ou o faz duas vezes, etc.Um construtor tem sempre o mesmo nome da classe a qual pertence. Para a classe String, pré-definida na linguagem o construtor tem a forma String("Constante do tipo String"); com o argumento entre aspas que é especificado pelo programador. Ele seria chamado automaticamente no momento da criação, declaração de uma String, sem necessidade de uso do nome do construtor como método, apenas dos argumentosFonte: http://javafree.uol.com.br/topic-4424-Como-funciona-o-metodo-construtor.html
  • Um construtor tem que obrigatoriamente o mesmo nome da classe.

ID
58972
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Public interface Coins {
int
PENNY = 1,
NICKEL = 5,
DIME = 10,
QUARTER = 25,
DOLAR = 100;
}
class SodaMachine implements Coins {
int price = 3*QUARTER;
// ...
}

Considerando o código Java acima, que implementa uma
interface sem modos definidos, julgue os itens seguintes.

A criação de um objeto da interface Coins ( ) pode ser corretamente realizada por meio do construtor SodaMachine soda = new Coins( );.

Alternativas
Comentários
  • Interfaces não podem ser instanciadas...

  • Por outro lado poderiamos ter:

    Coins c = new SodaMachine ( );

    Como temos em Java

    List l = new ArrayList ();
  • Interfaces são classes sem construtores!

ID
58975
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Public interface Coins {
int
PENNY = 1,
NICKEL = 5,
DIME = 10,
QUARTER = 25,
DOLAR = 100;
}
class SodaMachine implements Coins {
int price = 3*QUARTER;
// ...
}

Considerando o código Java acima, que implementa uma
interface sem modos definidos, julgue os itens seguintes.

Uma das possíveis utilidades desse tipo de código é o compartilhamento de constantes por diversas classes.

Alternativas
Comentários
  • Sim, pois ao implementar a interface "Coins" as classes poderão acessar seus atributos. 


ID
58981
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Quanto a conceitos de tipos de dados em linguagem Java, julgue
os itens a seguir.

A classe Java.lang.string possibilita a operação com strings. Se, em uma mesma expressão, o operador + combinar valores numéricos e strings, os valores numéricos serão convertidos para strings e, então, concatenados.

Alternativas

ID
58984
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Quanto a conceitos de tipos de dados em linguagem Java, julgue
os itens a seguir.

Valores numéricos reais em Java podem ser representados por variáveis do tipo byte, short, int ou long. Alguns tipos contêm valores inteiros com sinal, com representação interna em complemento de um.

Alternativas
Comentários
  • Valores numéricos reais são representados pelos tipos float e double. Lembrando que para representar um valor float deve-se colocar após o valor. Ex.: 3.1415f


ID
58987
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Quanto a conceitos de tipos de dados em linguagem Java, julgue
os itens a seguir.

Ao adicionar um número inteiro a uma classe implementada como um array (pushing), ele é armazenado no primeiro elemento disponível vazio. Ao remover um número inteiro (popping), como em uma estrutura de pilha, remove-se o primeiro número inteiro do agregado heterogêneo array.

Alternativas
Comentários
  • Errada.

    "(...)remove-se o ÚLTIMO número inteiro do agregado heterogêneo array."

     

  • Acredito que o erro esteja aqui: "ele é armazenado no primeiro elemento disponível vazio".

    Se eu tenho o seguinte array:

    frutas[0] = "Banana";

    frutas[1] = "Maçã";

    frutas[3] = "Laranja";

    E eu quero adicionar mais uma fruta, sem especificar posição:

    frutas[] = "Uva";

    Ele vai ser colocado em frutas[4], e não em frutas[2].

    Alguém discorda?

  • Em um array, caso não se especifique a posição, o número é armazenado na primeira posição vazia após o último elemento.


ID
58990
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito de orientação a objetos em linguagem Java, julgue os
itens subsequentes.

Ao contrário dos tipos primitivos que não são objetos, os tipos de objetos são determinados pela classe de origem.

Alternativas
Comentários
  • "Variáveis do tipo object podem conter qualquer tipo de objeto. Todos os objetos são filhos de object".


ID
58993
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito de orientação a objetos em linguagem Java, julgue os
itens subsequentes.

Uma classe final indica uma classe que não pode ser estendida. Um método final não pode ser redefinido em classes derivadas.

Alternativas
Comentários
  • Só acrescentando que classes final são usadas para implementar o padrão de projeto Singleton.

ID
58996
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito de orientação a objetos em linguagem Java, julgue os
itens subsequentes.

O comando abstract void moveTo(double deltaX, double deltaY); implementa um método abstrato. A subclasse de uma classe abstrata usualmente fornece implementações para todos os métodos abstratos na classe pai.

Alternativas

ID
58999
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito de orientação a objetos em linguagem Java, julgue os
itens subsequentes.

A interface é uma coleção de operações que pode especificar serviços de uma classe ou componente.

Alternativas
Comentários
  • Conceito retirado do livro "UML: guia do usuário".


ID
59002
Banca
CESPE / CEBRASPE
Órgão
TRT - 17ª Região (ES)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito de orientação a objetos em linguagem Java, julgue os
itens subsequentes.

Uma variável de instância possui vários valores para cada instância da classe, enquanto que variáveis de classe iniciam-se pelo modificador private, significando, ao compilador, que há apenas uma cópia da classe em existência, independentemente de quantas vezes ela é instanciada.

Alternativas
Comentários
  • Variável de classe inicia com static

ID
62527
Banca
CESPE / CEBRASPE
Órgão
INSS
Ano
2008
Provas
Disciplina
Programação
Assuntos

Acerca do funcionamento de programas em plataformas
como Java, PHP ou Ajax e sua relação com o ambiente
de execução e sistema operacional, julgue os itens
seguintes.

A implementação de aplicações web usando plataformas como Java e PHP apresenta como vantagens, em relação ao modelo cliente-servidor embasado em plataformas proprietárias, a padronização e a portabilidade das interfaces com o usuário, bem como a independência relativa ao SGBD empregado neste último caso, que é especialmente fortalecida se usados triggers e stored procedures.

Alternativas
Comentários
  • Embasado em plataformas LIVRES (e nao em proprietarias).
  • Usar triggers e stored procedures aumenta a dependência com o SGBD.
  • Questãozinha mal escrita essa
  • ... bem como a independência relativa ao SGBD empregado neste último caso, que é especialmente fortalecida se usados triggers e stored procedures.

    Utilizando triggers e stored procedures a dependência relativa ao SGBD aumenta, pelo fato da lógica de negócio encontrar-se localizada no banco de dados e não nos objetos de negócio da aplicação.

ID
70318
Banca
FCC
Órgão
TRT - 3ª Região (MG)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Em Java, uma Collection que não contém elementos duplicados é a interface

Alternativas
Comentários
  • Collection: Interface base para todos os tipos de coleção. Ela define as operações mais básicas para coleções de objetos, como adição (add) e remoção (remove) abstratos (sem informações quanto à ordenação dos elementos), esvaziamento (clear), tamanho (size), conversão para array (toArray), objeto de iteração (iterator), e verificações de existência (contains e isEmpty).List: Interface que estende Collection, e que define coleções ordenadas (sequências), onde se tem o controle total sobre a posição de cada elemento, identificado por um índice numérico. Na maioria dos casos, pode ser encarado como um "array de tamanho variável" pois, como os arrays primitivos, é acessível por índices, mas além disso possui métodos de inserção e remoção.Set: Interface que define uma coleção, ou conjunto, que não contém duplicatas de objetos. Isto é, são ignoradas as adições caso o objeto ou um objeto equivalente já exista na coleção. Por objetos equivalentes, entenda-se objetos que tenham o mesmo código hash (retornado pelo método hashCode()) e que retornem verdadeiro na comparação feita pelo método equals().Não é garantida a ordenação dos objetos, isto é, a ordem de iteração dos objetos não necessariamente tem qualquer relação com a ordem de inserção dos objetos. Por isso, não é possível indexar os elementos por índices numéricos, como em uma List.Map:Interface que define um array associativo, isto é, ao invés de números, objetos são usados como chaves para se recuperar os elementos. As chaves não podem se repetir (seguindo o mesmo princípio da interface Set), mas os valores podem ser repetidos para chaves diferentes. Um Map também não possui necessariamente uma ordem definida para o percorrimento.Fonte: http://javafree.uol.com.br/artigo/847654/
  • Abaixo temos a hierarquia das interfaces do Java Collections:
     

    collectionsfig01.JPG
     

     
    Set:Está diretamente relacionada com a idéia de conjuntos. Assim como um conjunto, as classes que implementam esta interface não podem conter elementos repetidos. Usaremos implementações de para situações onde desejarmos ordenar os elementos;
     


    Fonte: Utilizando Collections - Parte I http://www.devmedia.com.br/utilizando-collections-parte-i/3162#ixzz2ZKK8xywj
  • a-

    A Set is a Collection that cannot contain duplicate elements. It models the mathematical set abstraction. The Set interface contains only methods inherited from Collection and adds the restriction that duplicate elements are prohibited.

    https://docs.oracle.com/javase/tutorial/collections/interfaces/set.html


ID
72121
Banca
CESGRANRIO
Órgão
IBGE
Ano
2010
Provas
Disciplina
Programação
Assuntos

Durante um processo de revisão do sistema de Compras, escrito em plataforma J2EE, foram levantadas as necessidades a seguir

I - O sistema de Compras deverá utilizar a camada de negócio do sistema de Contabilidade, também desenvolvido em plataforma J2EE, e que está instalado em outros servidores, para realizar consultas a informações bancárias dos fornecedores, sendo que a camada de negócio dos dois sistemas está baseada em EJB.

II - Um novo subsistema deverá ser implementado para atender novas necessidades do sistema de Compras, entretanto, os EJBs, que irão compor a camada de negócio deste novo subsistema, não devem utilizar descritores de deployment, mas sim, outra forma alternativa de configuração.

III - Um mecanismo assíncrono que permita que fornecedores possam, por meio do site do sistema de Compras, solicitar o envio de um e-mail com a lista de licitações que estão disponíveis no site e o valor das licitações de que os fornecedores estão participando é assíncrono porque o fornecedor não precisa ser informado de que o seu pedido foi realizado com sucesso ou não, além do fato de que este seria um processo complexo de ser implementado de forma síncrona.

IV - Um mecanismo de auditoria deve ser implementado em alguns EJBs do sistema de Compras de forma tal que sempre que os métodos de negócio destes EJBs forem chamados, um log de auditoria será gravado em uma tabela do banco de dados do sistema de Compras.

Para cada uma das necessidades acima, um analista propôs, respectivamente, as seguintes soluções:

. Implementar as interfaces remotas dos EJBs do sistema de Contabilidade que forem chamados pelo sistema de Compras, além de realizar todas as configurações e builds necessários.Como as chamadas serão remotas, os argumentos serão passados por referência para os métodos dos EJBs da Contabilidade.

. Utilizar o recurso de annotations, como por exemplo a Stateless annotation, que especifica que um EJB não pode manter o estado durante uma sessão com o cliente.

. implementar um MDB (Message Driven Bean) para tratar as requisições e o processamento do envio do e-mail, uma vez que o processo é assíncrono.

.Criar classes de interceptors para os EJBs, sendo o mecanismo de auditoria implementado nos métodos das classes de interceptors.

Sabendo-se que os EJBs do sistema de Compras seguem o padrão 3.0 e os da Contabilidade seguem o padrão 2.1, conclui-se que as soluções apresentadas pelo analista atendem às necessidades

Alternativas
Comentários
  • Acho que a solução dada pela interoperabilidade entre o sistema de Compras e o de Contabilidade está errada quando diz:"Como as chamadas serão remotas, os argumentos serão passados por referência para os métodos dos EJBs da Contabilidade."Os argumentos não serão passados por referências. Eles serão serializados, enviados via rede e, finalmente, desserializados.
  • Lousy, veja bem:

    1. A session bean can implement several interfaces or none. A business interface is a standard Java interface that does not extend any EJB-specific interfaces. Like any Java interface, business interfaces define a list of methods that will be available for the client application. They can use the following annotations:

      • @Remote: Denotes a remote business interface. Method parameters are passed by value and need to be serializable as part of the RMI protocol.

      • @Local: Denotes a local business interface. Method parameters are passed by reference from the client to the bean. 


ID
76888
Banca
CESGRANRIO
Órgão
BACEN
Ano
2010
Provas
Disciplina
Programação
Assuntos

Uma instituição financeira desenvolverá um novo sistema de informação WEB com base na plataforma Java EE 5. Os programadores devem ter ciência de que, na linguagem de programação Java e tecnologias relacionadas, NÃO é

Alternativas
Comentários
  • O que degrada a performance é usar "synchronized".
  • O método "synchronized" prove uma proteção quanto ao acesso simultâneo, o que impacta no desempenho.
    Opção correta!

    O método final apenas indica que o método não pode ser sobrescrito.
  • Na verdade essa questão é uma pegadinha de interpretação:

    Letra 
    a)
    Não é possível listar, por meio da Reflection API, que anotações foram colocadas em um parâmetro de um método. [ERRADO] Isso é possível
    b) Não é possível obter, por meio da Reflection API, as interfaces que determinada classe implementa. [ERRADO] Isso é possível
    c) Não é importante declarar métodos como "final", sempre que possível, para obter aumento de, pelo menos, 50% no desempenho, na JVM da Sun. [CORRETO] Realmente não é importante declarar os métodos como final para obter 50% de desempenho.
    d) Não é importante, por questões de desempenho, evitar utilizar métodos "synchronized", quando possível. [ERRADO] É importante evitar synchronized por questões de desempenho.
    e) Não é necessário fechar, explicitamente, objetos JDBC como ResultSet, sob pena de vazamento de memória (memory leak), na conexão com alguns bancos de dados. [ERRADO] é necessário fechar.



     

  • Não sabia dos 50%


ID
76894
Banca
CESGRANRIO
Órgão
BACEN
Ano
2010
Provas
Disciplina
Programação
Assuntos

Uma equipe de desenvolvimento de sistemas, que utiliza Eclipse como IDE Java, deseja utilizar o Subversion para controle de versão de seus programas. Que plugins podem ser instalados no Eclipse para que haja a integração da IDE com o repositório do Subversion?

Alternativas
Comentários
  • The Subversive project is aimed to integrate the Subversion (SVN) version control system with the Eclipse platform. Using the Subversive plug-in, you can work with projects stored in Subversion repositories directly from the Eclipse workbench in a way similar to work with other Eclipse version control providers, such as CVS and Git.

    Fonte: http://www.eclipse.org/subversive/

     

    FileSync plugin for Eclipse is a file synchronisation tool.

    Fonte: http://marketplace.eclipse.org/content/filesync

  • Quem não tem acesso: --> D


ID
78475
Banca
FCC
Órgão
TRT - 18ª Região (GO)
Ano
2008
Provas
Disciplina
Programação
Assuntos

Um conjunto de Servlets, páginas JSP, classes Java, bibliotecas, ícones, páginas HTML e outros elementos, que podem ser empacotados juntos pelos desen- volvedores, deve ser instalado no Tomcat sob o diretório

Alternativas
Comentários
  • webapps é o diretório base de aplicações do Tomcat do localhost.

  • a) bin: Este diretório contém os arquivos binários executáveis, necessários para a execução do servidor.
    b) conf: Contém arquivos de configuração. Dentre os vários arquivos neste diretório, os mais importantes são server.xml, tomcat-users.xml e web.xml. O arquivo server.xml é o arquivo de configuração principal do Tomcat. É usado para configurar logs, conexões com outros servidores, a porta e host na qual o servidor está sendo executado e o local dos arquivos de cada aplicação web. O arquivo tomcat-users.xml é a base de dados padrão para a autenticação de usuários. Se um dia você esquecer a senha que você definiu na hora da instalação do Tomcat, é só abrir este arquivo e recuperá-la. O nome e local deste arquivo pode ser alterado no arquivo server.xml. O arquivo web.xml é o descritor de instalação (deployment) padrão para todas as aplicações web. O Tomcat processa este arquivo antes de processar os arquivos web.xml das aplicações web sendo instaladas.
    c) logs: O diretório logs é o local padrão para os arquivos de logs.
    d) webapps: Diretório padrão para a instalação de aplicações web no Tomcat.
    e) work: Este diretório é onde o Tomcat coloca o código da página JSP depois que este é convertido em um Servlet. Uma vez que uma página JSP é visitada pela primeira vez, o Tomcat armazenará o código compilado neste diretório também.

    [1] http://www.arquivodecodigos.net/arquivo/tutoriais/tomcat/usando7.php


ID
104911
Banca
FCC
Órgão
TRE-AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

Quanto aos escalonamentos de threads em Java, considere:

I. Em sistemas que aceitam preempção, uma thread executando em uma CPU também pode ser interrompida por uma thread de prioridade mais alta.

II. Chamando o método run(), uma thread sugere que deseja abrir mão do controle da CPU, permitindo que outra thread tenha a oportunidade de ser executada.

III. Para que todas as threads tenham uma quantidade igual de tempo de CPU em um sistema que não realiza a repartição de tempo, uma thread pode abandonar o controle da CPU com o método yield().

Está correto o que se afirma em

Alternativas
Comentários
  • De acordo com http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Thread.html#yield%28%29

    A assertiva II está seria correta se substituída por:

    Chamando o método yield(), uma thread sugere que deseja abrir mão do controle da CPU, permitindo que outra thread tenha a oportunidade de ser executada.
  • Para quem não tem acesso a alternativa correta é a:

    1 e 3 apenas!!!


ID
104971
Banca
FCC
Órgão
TRE-AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

Dentre os modificadores especiais Java, aquele que indica ao compilador que o método é implementado em outra linguagem (ex. C++ ou Assembly) de modo específico da plataforma (JNI) é o

Alternativas
Comentários
  • Resposta (a)

    native - métodos marcados como native dizem que sua implementação é feita em uma outra linguagem (por exemplo C), para que se possa acessar recursos específicos do sistema operacional.

    transient - indica que uma determinada variável de instância não será serializada junto com o objeto da classe.

    synchronized - um método com essa marcação será controlado para que não se possa ter duas threads acessando o mesmo objeto.

    volatile - indica que uma determinada variável de instância pode ser modificada em duas threads distintas ao mesmo tempo.

    strictfp - serve para aumentar a precisão em operações com pontos flutuantes.

     


ID
104974
Banca
FCC
Órgão
TRE-AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

Para responder às questões de números 66 a 68,
considere os modificadores Java e sua aplicação em

I. Atributo.

II. Variável local.

III. Método.

IV. Classe.

Dentre as aplicações dadas, Public aplica-se a

Alternativas

ID
104977
Banca
FCC
Órgão
TRE-AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

Para responder às questões de números 66 a 68,
considere os modificadores Java e sua aplicação em

I. Atributo.

II. Variável local.

III. Método.

IV. Classe.

Dentre as aplicações dadas, Static aplica-se APENAS a

Alternativas
Comentários
  • Não acredito que a resposta dessa questão esteja correta, pois o modificador STATIC também se aplica para o ítem IV Classe, um exemplo típico dessa modificação é o próprio método MAIN. (public static void main() )
  • main é um método (ítem III), mas apesar disso você está certo: o modificador static pode ser aplicado à classes (internas), como em:

    class Static {
        static int a;
        static class OlhaAqui {
            static void metodo() {}
        }
    }

    pode compilar aí pra ver ;)

    ps: acho difícil, pois a questão é de 2009, mas será que o edital não exigia uma versão de Java da época em que não era possível classes static?

  • Beto Campos, eu acredito que o que você falou não seja uma classe e sim um método. 

    public static void main (String args[]){

    }

    Assim, a questão está correta

  • Justificativa para a C estar correta.


ID
104980
Banca
FCC
Órgão
TRE-AM
Ano
2010
Provas
Disciplina
Programação
Assuntos

Para responder às questões de números 66 a 68,
considere os modificadores Java e sua aplicação em

I. Atributo.

II. Variável local.

III. Método.

IV. Classe.

Dentre as aplicações dadas, Synchronized aplica-se APENAS a

Alternativas
Comentários
  • Pode-se usar o modificador Synchronized de duas maneiras:

    Ou como um bloco, colocando um objeto (ou seja, não pode colocar nenhum dos 8 tipos primitivos do Java: byte, boolean, char, short, int, long,  float, double) que se deseja sincronizar:

    // Como bloco
    synchronized  ( Object ) {
             (...)
    }

    Ou como um método sincronizado:

    // método sincronizado
    public synchronized void evitandoAnomaliasDeAcessoConcorrente( ) {
     (...)
    }

ID
106159
Banca
FCC
Órgão
PGE-RJ
Ano
2009
Provas
Disciplina
Programação
Assuntos

Um JavaBean para ser salvo em arquivo, ou enviado de um computador para outro, em aplicações distribuídas, deve implementar a interface

Alternativas
Comentários
  • De forma genérica a serialização é uma técnica usada para persistir objetos, ou seja:  gravar objetos em disco, fazer a transmissão remota de objetos via rede, armazenar os objetos em um banco de dados e/ou arquivos (binários , xml, etc.)

    Serializar nada mais é do que colocar os valores que o objeto está utilizando juntamente com suas propriedades de uma forma que fique em série (sequencial). Fazendo isto estamos tornando o objeto Serializable, e, tornando um objeto Serializable, estamos atribuindo essa qualidade a ele, e dando privilégios para que o mesmo possa ser gravado em disco ou enviado por rede.

    A serialização é o processo de armazenar um objeto, incluindo todos os atributos públicos e privados para um stream.

    Fonte: 
    http://www.macoratti.net/vbn_seri.htm


     


ID
106165
Banca
FCC
Órgão
PGE-RJ
Ano
2009
Provas
Disciplina
Programação
Assuntos

Um exemplo de exceção incluída na linguagem Java, que indica quando uma aplicação tentou usar uma referência a um objeto que não foi identificado, é

Alternativas
Comentários
  • Com "identificado" ele quiz dizer "instanciado", logo a resposta seria NullPointerException, identificado e instanciado são coisas bem diferentes, mas...
    ClassNotFoundException só ocorre quando se quer fazer uma referência a uma classe através de seu nome utilizando algo como:
    Class.forName(java.lang.String)
    ClassLoader.findSystemClass(java.lang.String)
    ClassLoader.loadClass(java.lang.String, boolean)

  • ClassNotFoundException: ocorre quando alguma classe não é encontrada no seu classpath

    NullPointerException: ocorre quando há uma tentativa de acessar algum objeto que seja “null”, Exemplo: Quando você tentar chamar o método “size()” de um ArrayList que ainda não foi instanciado.

    ArithmeticException: alguma operação aritmética é inválida e a mesma gera uma exceção, operações essas que não podem ser resolvidas, como é o caso da divisão por zero

    NumberFormatException: Ocorre quando o valor esperado é diferente do valor atual.

    IndexOutOfBound: esse erro acontece quando se tenta acessar um “campo” que não existe na matriz


ID
106168
Banca
FCC
Órgão
PGE-RJ
Ano
2009
Provas
Disciplina
Programação
Assuntos

A interface Map do fremework de coleções da linguagem Java retorna o valor associado a uma chave especificada por meio do método

Alternativas
Comentários
  • Correta letra A.
    get(Object key) 
    Returns the value to which the specified key is mapped, or null if this map contains no mapping for the key.

    Fonte:http://docs.oracle.com/javase/6/docs/api/java/util/Map.html

ID
106171
Banca
FCC
Órgão
PGE-RJ
Ano
2009
Provas
Disciplina
Programação
Assuntos

Blocos ou trechos de operações em código Java podem ser incluídos em uma página JSP por meio de

Alternativas
Comentários
  • a) a diretiva page processa informação para esta página

    b) a diretiva include adiciona arquivos por meio de sua inclusão

    c) os comentários servem para documentar o código fonte

    d) a taglib define uma biblioteca de tags a ser utilizada

    e) os scriptlets são pedaços de código java que podem ser incluídos em páginas JSP por meio das tags <% %>


ID
114187
Banca
CESPE / CEBRASPE
Órgão
TRE-MT
Ano
2010
Provas
Disciplina
Programação
Assuntos

A respeito dos conceitos de programação orientada a objetos e da linguagem de programação Java, assinale a opção correta.

Alternativas
Comentários
  • Pesquisar: modificador abstract.
  • O que faz a alternativa E estar errada?
    Edit:
    Estava pesquisando mais e achei o seguinte: "Se uma classe abstrata herdar outra classe abstrata, a classe que herda não precisa implementar os métodos abstratos."
    Pelo visto então a letra E está errada mesmo.
  • A) Não há fundamento nessa alternativa

    B) polimorfismo dinâmico - overload - sobrescrito

    C) os métodos FINAL não podem ser sobrescritos

    D) o modificador de acesso padrão (default) dá visibilidade na classe e no pacote

    E) Não há obrigatoriedade da classe que implementou a classe abstract implementar o método abstract. Caso não implemente, então essa classe também será abstract.

  • Achei o item E muito mal escrito. O trecho: "As subclasses dessa classe abstrata definem implementação para tais métodos. " não dá a impressão de obrigatoriedade de implementação do mesmo, apenas afirma que os métodos das subclasses definem a implementação, no sentido de possibilidade.



  • Essa letra E está muito esquisita.

  • Analise das opções:

    a) Na linguagem Java, a definição de classes em que a declaração de todas as suas variáveis seja private é uma forma de se obter uma implementação coesa. (Errado - Todas as variáveis private é uma forma encapsulamento )

    b) Na linguagem Java, é possível haver polimorfismo por meio da implementação de herança entre classes. (Correto)

    c) Em uma hierarquia de classes na linguagem Java, uma subclasse sobrescreve qualquer método da sua superclasse. (Errado - Sobrescreve apenas métodos públicos e protegidos )

    d) Na linguagem Java, os métodos de uma classe que tenham acesso padrão são usados em qualquer outra classe. (Errado - modificador de acesso padrão (default) dá visibilidade na classe e no pacote ).

    e) Na linguagem Java, métodos abstract de classes abstract não têm implementação definida. As subclasses dessa classe abstrata definem implementação para tais métodos. (Errado - Não há obrigatoriedade da classe que implementou a classe abstract implementar o método abstract )


ID
118639
Banca
FCC
Órgão
TRT - 20ª REGIÃO (SE)
Ano
2010
Provas
Disciplina
Programação
Assuntos

São projetadas para fornecer aos desenvolvedores uma solução JAVA permitindo criar aplicações web. Para sua criação é necessário importar a classe padrão de extensão de dois pacotes. Essa é a definição de:

Alternativas
Comentários
  • Os dois pacotes citados na questão são: javax.servlet e javax.servlet.http.
  • d-

    Web tier é feito de sevlet containers, servidores de aplicacao leves, mas nao possuem todos os serviços dos servidores de aplicação


ID
118831
Banca
FCC
Órgão
TRT - 20ª REGIÃO (SE)
Ano
2010
Provas
Disciplina
Programação
Assuntos

Na orientação a objetos, construtores e destrutores são métodos especiais responsáveis pela criação e destruição de objetos. Nesse aspecto, considere:

I. Em DELPHI, uma chamada do tipo MeuVeiculo := TVeiculo.Create; invocará o construtor padrão TObject.

II. Em DELPHI, linhas de código do tipo MeuVeiculo.Destroy; e MeuVeiculo : = nil; libera a memória que foi alocada para o objeto MeuVeiculo, como também limpa a referência a ele.

III. Em JAVA, se nenhum construtor for explicitamente definido pelo programador da classe, um construtor padrão é incluído para a classe pelo compilador Java.

IV. Java possui uma gerência automática de memória, ou seja, quando um objeto não é mais referenciado pelo programa, é automaticamente destruído.

Está correto o que se afirma e

Alternativas
Comentários
  • Posso afirmar que As duas opções que tratam de JAVA (III e IV) estão corretas.
    Opção III: você não precisa criar construtores para toda classe, quando você não cria construtores, um construtor padrão é criado automaticamente.
    Opção IV: refere-se a garbage collection. a GC limpa automaticamente objetos sem vinculos.

    Não conheco DELPHI, por isso nao posso comentar as outras afirmaçoes.
  • Sobre o item III: Java é compilado ou é interpretado? pois a assertiva fala que quem cria o construtor automaticamente é o compilador, mas acredito que quem faça isso é o interpretador java não?
  • @DanJuh CasalConcurseiro, em Java, o código fonte é compilado para bytecode e o bytecode é interpretado pela máquina virtual Java. Logo, é correto afirmar que o compilador cria automaticamente um construtor default caso nenhum seja informado.


ID
120664
Banca
FCC
Órgão
SERGAS
Ano
2010
Provas
Disciplina
Programação
Assuntos

É tida como uma das principais linguagens de programação orientada a objeto; tem como característica a compilação para um bytecode e execução por uma máquina virtual. Trata-se da linguagem

Alternativas
Comentários
  • Letra D
    Falou em bytecode e orientada a objetos, impossível não lembrar de Java.
  • Cuidado: (Não está nas opções) Mas não custa lembrar que estem mais linguagens com essas características, C# por exemplo.

  • Que linguagem será essa? rsrs Muito Fácil, essa!


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

Uma classe java.io que age como ponte entre streams orientadas a caractere e streams orientadas a byte, que escreve caracteres codificando-os em bytes:

Alternativas
Comentários
  • Java tem dois tipos de fluxos de arquivos: Fluxo de Bytes e Fluxo de Caracteres.

    Para fluxo de bytes temos as classes abstratas InputStream (entrada) e OutputStream (saída).

    Algumas subclasses:  BufferedInputStream, DataInputStream, BufferedOutputStream (...)

    Para fluxo de caracteres temos, também classes abstratas, Writer e  Reader.

    Exemplos de subclasses: BufferedWriter e BufferedReader

    Mnemônicamente podemos inferir que OutputStreamWriter ( OutputStream + Writer ) agregam as duas funcionalidades,isto é, recebe um fluxo de caracteres que são gravados em bytes com o enconding especificado.Na API:An OutputStreamWriter is a bridge from character streams to byte streams: Characters written to it are encoded into bytes using a specified charset. The charset that it uses may be specified by name or may be given explicitly, or the platform's default charset may be accepted. A classe FileWriter é uma subclasse de OutputStreamWriter e ObjectOutputStream é uma subclasse de OutputStream.Só uma curiosidade:System.in é uma instância de InputStream. Já System.out e System.err são instâncias da classe PrintStream.





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

As tecnologias Web utilizam linguagem de scripting JavaScript, linguagem de scripting ASP e applets Java para incluir aplicações, respectivamente, no lado

Alternativas
Comentários
  • ACTIVE SERVER PAGESPara entender ASP, devemos começar com o entendimento do que são "scripts Server Side" e "scripts Client Side".Client Side: o nome já diz, lado-cliente, ou seja, um script ou código que roda do lado-cliente, o browser especificamente. Exemplo: O HTML é uma linguagem Client side, pois é interpretado pelo browser. Server Side: lado-servidor, ou seja, o cliente faz uma requisição pelo browser, que envia a solicitação ao servidor que devolve em forma de uma aplicação Client Side. O ASP funciona assim, é um conjunto de scripts interpretado somente pelo servidor (não adianta tentar rodar ele direto no browser, pois não irá funcionar) que devolve para o cliente um código em HTML, onde qualquer browser interpretará. Exemplos de linguagens Client Side e Server Side:Linguagem/Lado que roda HTML/Cliente XML/Cliente Java Script/Cliente ASP/Servidor PHP/Servidor CGI ServidorQuanto aos applets:applets Java são independentes de plataforma, podendo rodar em qualquer computador que tenha a JVM (Java Virtual Machine) e um navegador de web-applet capaz.Benefícios: Instalando o JVM em QUALQUER máquina de usuário, o browser irá rodar corretamente qualquer página de Internet, sem que os desenvolvedores das páginas de Internet tenham que adaptar os layouts às especificidades e/ou limitações que cada um dos computadores dos usuários possa vir a ter.
  • Casberia recurso essa questão. 
    Já que java script é CLIENTE E SERVIDOR!

    Abraços.
  • JavaScript is primarily client-side (meaning that the users own system would be running it) and supported so long as the users browser is configured to allow JavaScript. 

    Java applets are client-side scripts that are created locally on a system using Java language and then compiled and uploaded. 
    JSP and Servelets are server-side scripting that requires the user's webhost to provide a servlet runner and support for the languages.
    http://wiki.lunarpages.com/Difference_between_Javascript_Java_JSP_and_Servelets



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

Servlets são projetadas para fornecer aos desenvolvedores uma solução JAVA para criar aplicações web. Para criar Servlets é necessário importar as classes padrão de extensão dos pacotes

Alternativas
Comentários
  • Um servlet estende a funcionalidade de um servidor.

    O pacote javax.servlet e o pacote javax.servlet.http fornecem as classes e as interfaces para definir os servlets.

    Alternativa "a".

ID
126490
Banca
ESAF
Órgão
Prefeitura de Natal - RN
Ano
2008
Provas
Disciplina
Programação
Assuntos

Analise as seguintes afi rmações relacionadas a conceitos sobre a linguagem de programação JAVA e os métodos da classe ThreadGroup:

I. O método isDestroyed( ) destrói o grupo e os subgrupos.
II. O método getParent( ) retorna a ascendente do grupo.
III. O método setMaxPriority( ) determina se há permissão para modifi car o grupo.
IV. O método resume( ) reativa todos os threads do grupo.

Indique a opção que contenha todas as afi rmações verdadeiras.

Alternativas
Comentários
  • I. O método isDestroyed( ) destrói o grupo e os subgrupos.
       ERRADO, o método que faz isso é o destroy().

    II. O método getParent( ) retorna a ascendente do grupo.
        CORRETO.

    III. O método setMaxPriority( ) determina se há permissão para modifi car o grupo.
         ERRADOeste método define a prioridade máxima do grupo.
     
    IV. O método resume( ) reativa todos os threads do grupo.
        CORRETO.


    FONTE: http://download.oracle.com/javase/1.3/docs/api/java/lang/ThreadGroup.html  (JAVADOC)

ID
126979
Banca
CESPE / CEBRASPE
Órgão
CEHAP-PB
Ano
2009
Provas
Disciplina
Programação
Assuntos

O Log4j é ferramenta que auxilia o programador no tratamento de erros em determinados tipos de aplicações. Assinale a opção correta acerca do Log4j.

Alternativas
Comentários
  • Log4j é uma ferramenta de código aberto (OSS) desenvolvida para inserir instruções de logs em seu aplicativo e foi desenvolvida por pessoas da Fundação Apache . Sua velocidade e flexibilidade permitem que as instruções de log permaneçam no código enviado, dando ao usuário a capacidade de habilitar o registro em tempo de execução sem modificar qualquer binário do aplicativo. Tudo isso sem incorrer em um custo / perda de alto desempenho.

     

    a) ERRADO. O Log4j precisa de pelo menos um JDK 1.1.x compatível para ser executado

    b) ERRADO. O log4j usa 5 níveis, a saber, DEBUG, INFO, WARN, ERROR e FATAL.

    d) ERRADO. O Log4j foi desenhado para suportar sistemas multithread, evitando o consumo de memória.

     

    Fonte: https://www.waltercedric.com/index.php/development/102-java/framework/249-


ID
128458
Banca
FCC
Órgão
TRT - 15ª Região (SP)
Ano
2009
Provas
Disciplina
Programação
Assuntos

No âmbito da linguagem Java, considere:

I. Edição é a criação do programa, que também é chamado de código Bytecode.

II. Compilação é a geração de um código intermediário chamado fonte, que é um código independente de plataforma.

III. Na interpretação, a máquina virtual Java ou JVM analisa e executa cada instrução do código Bytecode.

IV. Na linguagem Java a interpretação ocorre apenas uma vez e a compilação ocorre a cada vez que o programa é executado.

Está correto o que consta em

Alternativas
Comentários
  • - A Edição é a criação do programa, que também é chamado de código fonte. - Com a compilação é gerado um código intermediário chamado Bytecode, que é um código independente de plataforma. - Na Interpretação, a máquina virtual Java ou JVM, analisa e executa cada instrução do código Bytecode. - Na linguagem Java a compilação ocorre apenas uma vez e a interpretação ocorre a cada vez que o programa é executado. Resposta:E
  • I - Edição é a criação do progrma, que também é chamado .class
    II - Compilação é a geração de um código intermediário chamado bytecode, que é independente de plataforma
    IIi - Correto
    IV - Na liguagem java a compilação ocorre apenas uma vez e a interpretação ocorre cada vez que o programa é executado
  • Começando pela última afirmativa já eliminava as outras 4 opções.

  • III. Na interpretação, a máquina virtual Java ou JVM analisa e executa cada instrução do código Bytecode.

    Interpretação ocorre análise? Qual análise? Não é a execução dos bytecodes apenas? Analise, sintática e semantica não ficam por conta do compilador, isto é, antes da interpretação do bytecode? Pra mim, todas erradas.

ID
128461
Banca
FCC
Órgão
TRT - 15ª Região (SP)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Considere as descrições abaixo a respeito das funções de argumentos usados na sintaxe javac (compilador).

I. Faz a compilação de código em desuso, geralmente de versões anteriores e aviso de advertência.

II. Exibe informações adicionais sobre a compilação.

Elas correspondem, respectivamente, a

Alternativas
Comentários
  • -deprecation Faz a compilação de código em desuso, geralmente de versões anteriores e faz aviso de advertência;
      -verbose Exibe informações adicionais sobre a compilação;
      -depend Faz a compilação de todos os arquivos que dependem do arquivo que está sendo compilado. Normalmente somente é compilado o arquivo fonte mais as classes que este invoca.
      -nowarm Desabilita as mensagens de advertência;

    Resposta correta: B

    Fonte: http://www.ebah.com.br/content/ABAAAfFE4AH/java-completo: Acessado em: 19/08/2012

ID
128797
Banca
FCC
Órgão
MPE-SE
Ano
2009
Provas
Disciplina
Programação
Assuntos

Considere uma operação de classe escrita da seguinte forma:

+ adicionarMensagem(m: Mensagem): Status

O símbolo de soma no início do texto e o termo entre parênteses significam, respectivamente:

Alternativas
Comentários
  • em UML a assinatura da operação é composta por
    • retorno;
    • nome;
    • parâmetos (tipo, ordem)
    a letra menos absurda é a A.
  • 1)  #  Protected

    2)  +  Public

    3)  ~  Package

    4)  -  Private


  • a-

    + - simbolo universal de public;

     

    Uma assinatura define as partes formais de uma função ou procesure. Existem em forma de nome da função e n° e sequencia de tipos de dados passados como parametros. 


ID
130033
Banca
CESPE / CEBRASPE
Órgão
SERPRO
Ano
2008
Provas
Disciplina
Programação
Assuntos

Com relação às linguagens, julgue os itens a seguir.

A linguagem Java, orientada a objetos, tem como característica ser compilada em um código executado em máquina virtual.

Alternativas
Comentários
  • Certo
    O bytecode, que é rodado em JVM.
  • Certo.

    A linguagem Java não é 100% orientada a objetos porque possui tipos primitivos, mas pode ser considerada, em termos gerais, como uma linguagem orientada a objetos. O código que é executado em máquina virtual é chamado de bytecode. A máquina virtual Java é a JVM - Java Virtual Machine.

  • A linguagem Java, orientada a objetos, tem como característica ser:

    compilada em um código (está falando da criação do Bytecode, que é o resultado da compilação do código-fonte por um compilador da JDK)

    executado em máquina virtual (está falando da execução do Bytecode na JVM, que realizará a interpretação do código Java para um código de máquina específico da plataforma).


ID
130081
Banca
CESPE / CEBRASPE
Órgão
SERPRO
Ano
2008
Provas
Disciplina
Programação
Assuntos

Com relação aos frameworks de software, julgue os itens
subseqüentes.

O GTK é orientado a objetos e foi escrito em Java para a criação de interfaces gráficas e widgets.

Alternativas
Comentários
  • O GTK é uma API gráfica típica de ambientes UNIX/Linux, desenvolvida em C/C++. Nada tem a ver com Java.

  • GTK foi escrito em C. É o único erro da questão.

    Deem uma olhada em http://www.gtk.org/

ID
136294
Banca
ESAF
Órgão
MPOG
Ano
2010
Provas
Disciplina
Programação
Assuntos

Na linguagem Java

Alternativas
Comentários
  • No contexto de Java, applets são aplicativos que se servem da JVM (Java Virtual Machine) existente na máquina cliente ou embutida no próprio navegador do cliente para interpretar o seu bytecode.
  • a) ERRADA! Pode sim haver aninhamento de vários for e while.


    b) ERRADA! /* e */ são usados para delimitar comentários no código fonte.

    c) CORRETA! Applets são executadas no navegador.
    d) ERRADA! É totalmente permitida a definição de expressões com variáveis int e double. Ex: int x = 2; double y = 4.3; System.out.print("Resultado = " + (x * y) ); //mostrarah 8.6
    e) ERRADA! Fazer cast de double para int diminui a precisão. Ex: z = (int) (8.6); //retornarah 8


ID
141268
Banca
ESAF
Órgão
ANA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Os argumentos são passados para métodos, em Java, por

Alternativas
Comentários
  • Passagem de parâmetros em JavaPor Marcus AureliusOntem no grupo de Computação Gráfica na UFRGS a gente teve uma bela discussão sobre passagem de parâmetros em Java. O interessante é que todo mundo sabia como funciona o mecanismo, só que uns chamavam de um jeito e outros (no caso, só o Pamplona, hehehe) chamavam a mesma coisa de outro nome. Por exemplo:No caso de uma variável de um tipo primitivo, ela é passada por valor (isto é, por cópia).No caso de uma variável contendo um objeto, o ponteiro pro objeto, ou melhor, a referência (assim costuma-se dizer em Java) é passada por valor.E aqui havia a bifurcação:Eu e todo mundo dizíamos, que se a referência ao objeto é passada, o objeto é passado por referência, então! Simples e lógico…Já o Pamplona concluía que então tudo era passado por valor, já que a referência ao objeto era passada por valor, do mesmo jeito que os tipos primitivos. Faz sentido também, mas eu ainda acho que passar uma referência é passagem por referência. :)Não me lembrei de perguntar: “Se isso aí não é passagem por referência, o que é passagem por referência então?”. Bom, imagino que a resposta seria: “Passagem por referência é passar a própria referência por referência”. Pra mim isso o nome disso é exatamente o que eu escrevi: passagem de referência por referência. Confuso? Acho que não! (o outro caso era passagem de objeto por referência, só pra relembrar) :DNo fim das contas, eu acho que o programador não pode deixar de saber que existe tanto o objeto quanto sua referência. São 2 expressões (passagem por valor e passagem por referência) pra expressar 3 conceitos (valor, referência por valor e referência por referência). Não tem como explicar melhor as coisas sem dar a explicação completa. Dizer que é tudo por valor não explica bem todos os casos, e dizer que tipos primitivos são passados por valor e objetos são passados por referência também é uma explicação meio incompleta (fica faltando: “é a referência ao objeto que é passada p
  • Sempre por valor (independente se tipo for primitivo ou for objeto).
  • Passagem de parâmetros por valor: A função recebe uma cópia da variável que é fornecida quando é invocada. Todas as alterações feitas dentro da função não vão afectar os valores originais.

    Passagem de parâmetros por referência: Neste caso o que é enviado para a função é uma referência às variáveis utilizadas, e não uma simples cópia, pelo que as alterações realizadas dentro da função irão certamente alterar os valores contidos nessas variáveis.


ID
141271
Banca
ESAF
Órgão
ANA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Em Java, para que um método de uma superclasse não seja sobrescrito em suas subclasses, aplica-se o modificador

Alternativas
Comentários
  • Segue abaixo quadro resumo:
    Declarações de Métodos
    accessLevel public: são visíveis em todas as classes de todos os pacotes.
    private: não pode ser acessado por nenhuma outra classe.
    protected: acessível por classes do mesmo pacote ou através de herança. Os membros herdados não são acessíveis a outras classes fora do pacote em que foram declarados.
    default (padrão): são acessíveis somente por classes do mesmo pacote.
    static Declara que o método é da classe, ao invés de ser do objeto.
    abstract O método não tem implementação e deve ser membro de uma classe abstrata.
    final O método não pode ser sobreposto por uma subclasse.
    synchronized Usado na declaração de threads.
    returnType Tipo de retorno do método. Se não tem retorno, especificar: void.
  • Porque a opção a) static não poderia ser considerada certa? Quando um método é marcado como static ele também não pode ser sobrescrito.

    publicclass Superclasse {

       publicstaticvoid metodoEstatico(){}

       publicfinalvoid metodoFinal(){}

     }

    publicclass Subclasse extends Superclasse{

             //não é possível sobrescrever nenhum método da classe Pai

    }


  • Rapaz a alternativa A ta certa tmb


ID
141274
Banca
ESAF
Órgão
ANA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Em uma aplicação Java, se o carregador de classes não conseguir localizar a classe do driver de banco de dados para uma conexão JDBC, é lançada a exceção

Alternativas
Comentários
  • java.lang.NoClassDefFoundError é a exceção lançada pelo JRE quando não localiza uma classe. Para evitá-la, deve-se configurar o CLASSPATH, ou seja, o caminho onde o JRE pesquisa por classes e outros recursos.
  • O nome já diz..     java.lang.NoClassDefFoundError


ID
141289
Banca
ESAF
Órgão
ANA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Se, na superclasse, um método é declarado protected, o(s) modificador(es) aplicável(is) na sobrescrita do método é(são)

Alternativas
Comentários
  • Letra E

    http://br.groups.yahoo.com/group/timasters/message/87044

    > > na sobrescrita, você não pode reduzir a visibilidade de um método! pode
    > > aumentar, mas não diminuir!
    > >
    > > isso é pra evitar que você não possa invocar determinados métodos
    > > dependendo
    > > da instância! por exemplo, uma variável com o tipo da superclasse... se
    > > você
    > > atribui um objeto da subclasse a essa variável, não seria possível
    > invocar
    > > o
    > > método que foi "escondido" nessa variável...

  • private < default < protected < public
    Métodos sobrescritos não podem reduzir a visibilidade, mas podem manter a mesma

ID
142024
Banca
CESPE / CEBRASPE
Órgão
TRE-MT
Ano
2010
Provas
Disciplina
Programação
Assuntos

Assinale a opção correta quanto à linguagem de programação Java.

Alternativas
Comentários
  • e) O Java permite que você tenha métodos com o mesmo nome, mas com assinaturas diferentes, isto chama-se sobrecarga. O interpretador determinará qual método deve ser invocado pelo tipo de parâmetro passado. Os trecho abaixo é válido para uma compilação Java.
    Diferente da sobrecarga, a sobrescrita acontece quando um método existe em uma classe ? pai ? e é reescrito na classe ? filha ? para alterar o comportamento. A assinatura do método deve ser igual na classe ? pai ? e na classe ? filha ?.

    http://javafree.uol.com.br/artigo/871497/
  • Não entendi pq a letra B é a certa, alguém pode me dizer?
  • Acredito que houve um engano... Um método sobrescrito tem a mesma assinatura:

    "A sobrescrita de métodos consiste basicamente em criar um novo método na classe filha contendo a mesma assinatura e mesmo tipo de retorno do método sobrescrito."

    Leia mais em: Sobrescrita e Sobrecarga - Revista Easy Java Magazine 11 http://www.devmedia.com.br/sobrescrita-e-sobrecarga-revista-easy-java-magazine-11/22603#ixzz3O5r4qbQJ

  • Também não entendi por que ser a letra B, pois, acredito que listas sejam especificações de coleções e não generalizações, como foi mencionada na letra B. 

  • Motivo de ser a B:

    List extends Collection (Lista é uma interface que estende a interface Collection).

    Ela trabalha com Objetos e não tipos de dados específicos, daí ser dita como tipo genérico de coleções.

    Isso vale para toda Collection.

    ………………..,-~*’`¯lllllll`*~,
    …………..,-~*`lllllllllllllllllllllllllll…
    ………,-~*lllllllllllllllllllllllllllllll…
    ……,-*lllllllllllllllllllllllllllllllll…
    ….;*`lllllllllllllllllllllllllll,-~*~-…
    …..\lllllllllllllllllllllllllll/………\;;…
    …...\lllllllllllllllllllll,-*………..`~-~…
    …….\llllllllllll,-~*…………………)_-\..*`*;.…
    ……..\,-*`¯,*`)…………,-~*`~.………….../
    ……...|/.../…/~,…...-~*,-~*`;……………./.\
    ……../.../…/…/..,-,..*~,.`*~*…………….*...…
    …….|.../…/…/.*`...\...……………………)….)¯`~,
    …….|./…/…./…….)……,.)`*~-,……….../….|..)…
    ……/./.../…,*`-,…..`-,…*`….,---…...\…./…
    …...(……….)`*~-,….`*`.,-~*.,-*……|…/.…/……
    …….*-,…….`*-,...`~,..``.,,,-*……….|.,*.…
    ……….*,………`-,…)-,…………..,-*`...,-*….(`-,…
    ..............f`-,………`-,/…*-,___,,-~*……

  • Muito simples,

    Assinatura diz respeito ao nome do método + os tipos de parâmetros utilizados. 

    Sobrescrita: mesma assinatura e (certamente) comportamentos diferentes.

    Sobrecarga: diferentes assinaturas e (certamente) comportamentos diferentes.

  • a) ERRADO. 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.

     

    c) ERRADO. Servlet (servidorzinho em tradução livre) é uma classe Java usada para estender as funcionalidades de um servidor. Apesar dos servlets poderem responder a quaisquer tipos de requisições, eles normalmente são usados para estender as aplicações hospedadas por servidores web, desta forma eles podem ser imaginados como Applets Java que rodam em servidores em vez de rodarem nos navegadores web.

     

    d) ERRADO. A linguagem Java prevê soluções para o problema de vazamento de memória - memory leak -, razão por que é necessário liberar objetos que não estejam mais em uso. Tecnicamente Java não pode ter vazamentos se considerar que o vazamento só ocorre quando algo é alocado e nunca ocorre a possibilidade de liberação quando não há mais referências para este objeto.

    Se considerar que vazamento é toda memória ocupada sem que tenha uma referência para aquele objeto, então Java vaza memória o tempo todo. Só não terá memória vazada quando o GC rodar e limpar tudo o que não há mais referências. Logo em seguida ele começa vazar de novo. Se não considera isto um vazamento, ficamos ainda com a definição que Java nunca vaza memória.

    Se considerar que vazamento é quando você tem um objeto referenciado ainda em algum lugar, mas este objeto não será mais usado na aplicação, aí ocorre o vazamento e pode ser por diversas razões. Mas muita gente não considera isto vazamento já que o objeto está referenciado.

     

    e) ERRADO. Assinatura diz respeito ao nome do método + os tipos de parâmetros utilizados.

    Sobrescrita: mesma assinatura e (certamente) comportamentos diferentes.

    Sobrecarga: diferentes assinaturas e (certamente) comportamentos diferentes.

  • Polimorfismo

    Existem dois tipos de polimorfismo que são conhecidos como sobrecarga (overload) e sobreposição (override).

    A sobrecarga (overload) consiste em permitir, dentro da mesma classe, mais de um método com o mesmo nome. Entretanto, eles necessariamente devem possuir argumentos diferentes para funcionar. RICARTE (2001) afirma que a escolha de qual método irá ser chamado pelo programa principal dependerá de acordo com o seu tipo de objeto, que será tomada apenas no tempo de execução por meio de ligação

    . Na sobreposição é necessário que os métodos tenham a mesma assinatura (tipo de retorno, nome do método, tipos e quantidades de parâmetros), mas com implementações diferentes.

    Acho que escreveram errado lá em cima Paulo H. e Claudston.


ID
142285
Banca
CESGRANRIO
Órgão
BNDES
Ano
2009
Provas
Disciplina
Programação
Assuntos

Qual das afirmações a seguir faz uma apreciação correta a respeito da linguagem de programação Java?

Alternativas
Comentários

  • a) O conceito de herança múltipla é implementado nativamente. Java não tem herança multipla.

    b) Uma classe pode implementar somente uma interface ao mesmo tempo. Uma classe pode implementar várias interfaces.

    c) Uma classe pode implementar uma interface ou ser subclasse de outra classe qualquer, mas não ambos simultaneamente.


  • Complementando o comentário.

    d) qualquer exceção não precisa ser tratada pelo método que a origina, este pode obrigar qualquer outro método que o envoque a tratar esta excessão com a clausula throw

    e) /toda a gerência de memória é feita pelo garbage collector
  • Complementando a afirmativa d):  as exceções do tipo RuntimeException são exceções que podem ser lançadas durante a execução da JVM e que podem ser tratadas, porém não precisam obrigatoriamente ser tratadas com throws ou com try catch.
  • Bernardo,

    Quanto a letra E, o erro está em dizer que  Strings, em java, podem ser alterados quando necessário. Strings são IMUTAVEIS.
  • Marcelo,

    como assim Strings são imutáveis? É possível sim alterar o seu valor em qualquer momento em que o programa é executado.
  • Arthur Rodriges Stilben o Marcelo tem razão.

    Objetos String são imutáveis.

    Sempre que você faz algo do tipo
    String a = "123";
    String b = "234";
    a = a + b;

    Você não está alterando a String original a; o que você está fazendo é alocar um novo objeto string com valor "123234"; finalmente o ponteiro a é direcionado para a nova String "123234"; Exatamente por este motivo é mais eficiente em  Java  utilizar um StringBuffer para concatenar varias Strings. 

    Mesmo assim o GC continua sendo o único responsável por desalocar objetos :)


ID
144469
Banca
CESPE / CEBRASPE
Órgão
TRE-MA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os itens seguintes, a respeito da linguagem de programação Java, criada pela Sun Microsystems, e voltada para o desenvolvimento de aplicações usadas na Internet.

I O compilador Java gera código para uma máquina hipotética.
II O código-objeto gerado pela compilação de um programa Java é portável para diferentes arquiteturas e sistemas operacionais.
III Para que qualquer código Java possa ser executado em um computador, sem a necessidade de recompilação, é necessária a existência de uma implementação da máquina virtual Java no computador.

Assinale a opção correta.

Alternativas

ID
144472
Banca
CESPE / CEBRASPE
Órgão
TRE-MA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Para definição e manipulação de uma exceção em Java, devem constar no programa, obrigatoriamente, os termos

Alternativas
Comentários
  • O try e catch são obrigatórios e o finally opcional

  • Esse comentário acima está equivocado.

    Pode existir try sem catch, só com finally.

    O bloco try pode ser composto de : try e um ou mais catch try e um finally try e um ou mais catch e um finally A questão se refere a 
    manipulação de uma exceção = catch
  • Mas Java não suporta try finally sem catch?

     

  • Exceções em Java

    As exceções em Java referem-se a erros que podem ser gerados durante a execução de um programa. Como o nome sugere, trata-se de algo que interrompe a execução normal do programa. Em Java, as exceções são divididas em duas categorias: Unchecked (não verificadas) e Checked (verificadas).

     

    1. Unchecked Exception  

    Neste tipo de exceção o compilador Java não verifica o código-fonte para determinar se a exceção está sendo capturada. Sendo assim, o tratamento deste tipo de exceção é opcional.

     

    2. Checked Exception

    Ao contrário de uncheck exception, neste tipo de exceção o compilador Java verifica o código-fonte para determinar se a exceção está sendo capturada. Se uma exceção verificada não for capturada (não estiver sendo tratada no código-fonte), o compilador acusa a possível exceção e obriga o programador a trata-la. Esta exceção pode ser tratada de duas formas: através da estrutura try-catch-finally ou por meio da clausula throws.

     

    Uso da estrutura try-catch-finally

     A estrutura try-catch permite a previsão de erros de execução. Esta estrutura tem como função desviar de um programa caso ocorram alguns tipos de erros, predefinidos durante o processamento das linhas, e evitar que o programador precise fazer testes de verificação e avaliação antes de realizar certas operações. Quando um erro ocorre, ele gera uma exceção que pode ser tratada pelo programa. A estrutura try-catch-finally pode ser usada tanto como Unchecked Exception como com Checked Exception. Existem muitas exceções que podem ser geradas pelas mais diversas classes e enumerá-las seriam um processo dispendioso e desnecessário, pois as exceções que devem ser obrigatoriamente tratadas (Checked Exceptions) são apontadas pelo próprio compilador.

     

    A estrutura try-catch-finally possui a seguinte sintaxe:

    try{

      conjunto_de_instrucoes

    } catch {  

    tratamento_de_erro1

    } catch {   tratamento_de_erro2

    } catch {   tratamento_de_erroN

     } finally   conjunto_de_instrucoes

    }

     

    Toda vez que a estrutura try é utilizada, obrigatoriamente em seu encerramento (na chave final) deve existir pelo menos um catch a não ser que ela utilize a instrução finally. A sintaxe apresentada pode ser interpretada como: tente executar o conjunto de instruções do try que estão entre chaves; se houver algum erro, execute o tratamento no catch. Depois de tratado o erro, a execução do programa continua a partir do final do último do catch. O finally é opcional e fornece um conjunto de códigos que é sempre executado, independentemente de uma exceção ocorrer ou não.


ID
144475
Banca
CESPE / CEBRASPE
Órgão
TRE-MA
Ano
2009
Provas
Disciplina
Programação
Assuntos

Um objeto de exceção possui, na linguagem Java, o método

Alternativas
Comentários
  • Esse método é herdado da classe Exception e pode retornar a mensagem de erro definida.
  • achei a questão mal elaborada! o que a banca que dizer com objeto de exceção?

    tudo bem que um objeto Exception retorna o método getMesage() com o nome do erro retornado no bloco try catch!

    agora se fizermos: String nome = new String(); nome.getMessage(); está errado este método getMesage() não existe no objeto String???



ID
144646
Banca
CESPE / CEBRASPE
Órgão
SECONT-ES
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os próximos itens, que se referem a frameworks Java
Server Faces (JSF) e Hibernate.

O JSF é um framework web embasado em interface gráfica, capaz de renderizar componentes e manipular eventos em aplicações web no padrão Java EE, no qual os componentes JSF são orientados a eventos. O JSF fornece, ainda, mecanismos para conversão, validação, execução de lógica de negócios e controle de navegação.

Alternativas
Comentários
  • na questao ele queria que vc conhecesse o ciclo de vida

    Restore view
    apply request
    process validation
    update model
    invoke app
    render response
  • A parte da frase: "execução de lógica de negócios" torna a questão difícil, mas está correto no sentido que faz acesso a camada de negócio.
  • É um contracenso falar em execução de lógica de negócios no JSF!
    Somente se essa lógica estivesse puramente relacionada com a apresentação da página ela poderia ser colocada em um backing bean.
  • JSF não é um framework e sim uma especificação.

    "JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications and exposing them as server side Polyfills.[1]"



  • "JavaServer Faces technology is a server-side component framework for building Java technology-based web applications."
    http://docs.oracle.com/javaee/6/tutorial/doc/bnaph.html

  • É preciso conhecer bem a banca para entender quando ela está levando ou não um termo ao pé da letra. Esse é um exemplo típico quando a banca fala em framework mas não especificação !!! Fora que ela não falou que o JSF era essencialmente gráfico. Logo, ela está certa.


ID
144853
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os itens seguintes a respeito das tecnologias de bancos de dados e aplicações web.

São características comuns de uma plataforma web suportada pela tecnologia JBoss: o desenvolvimento de aplicações embasado na linguagem Java/JSP e o uso de interceptadores (interceptors) para implementar um modelo de controle de comportamento de aplicações com base na orientação a aspectos.

Alternativas
Comentários

ID
144865
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os itens seguintes a respeito das tecnologias de bancos de dados e aplicações web.

São algumas palavras reservadas da linguagem Java: public, private, protected, class, interface, abstract, extends, implements, super, byte, short, char, int, long, float, double, boolean, void, try, catch, finally, throws, throw, import, package, if, else, false, true, continue, default, break, return, while, switch, transient, final, synchronized, null, new.

Alternativas
Comentários
  • Questão totalmente idiota, não mede conhecimento do aluno.


ID
144913
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os itens que se seguem a respeito dos padrões de desenho e outras técnicas para reúso de software.

A programação de um padrão Singleton na linguagem java usualmente demanda que o método getInstance seja declarado como de instância.

Alternativas
Comentários
  • getInstance() deve ser um método de classe (static)
  • Complementando, para ter acesso ao objeto, será executado algo como: 

    MinhaSingleton A,B;  
    A=MinhaSingleton.getInstance(); 
    B=MinhaSingleton.getInstance(); 

    =>A e B referenciam o msm objeto;


ID
144919
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os itens que se seguem a respeito dos padrões de desenho e outras técnicas para reúso de software.

Devido à inexistência de múltipla herança de classes na linguagem Java, o padrão Adapter de classes é pouco utilizado por programadores dessa linguagem.

Alternativas
Comentários
  •  O Adapter é usado para adaptar duas interfaces diferentes. Isso não tem nada a ver com herança múltipla.

  • Só para esclarecer sobre o Adapter:

    O padrão de projeto Adapter possui duas formas de utilização:

    Class Adapter -> Que utiliza Herança
    Object Adapter -> Que utiliza Composição

    Mas o Java não possuir herança múltipla não implica que esse padrão seja pouco utilizado.

ID
144931
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2009
Provas
Disciplina
Programação
Assuntos

Julgue os seguintes itens em relação às tecnologias de mercado para o desenvolvimento de aplicações.

São exemplos de packages presentes na plataforma JSE: java.awt.event, java.lang.reflect, java.net, java.sql, java.util.zip, org.xml.sax, org.omg.CORBA, java.rmi, e java.security.

Alternativas
Comentários
  • Todos os pacotes estão presente na API do Java. Segue:

    java.awt.event - classes e interfaces dos eventos de componentes AWT

    java.lang.reflect - classes e interfaces para trabalhar com Reflection

    java.net - classes para trabalhar com protocolos de redes

    java.sql - API para acesso a banco de dados

    java.util.zip - classes para trabalhar com arquivos no formato ZIP e GZIP

    org.xml.sax - API para trabalhar com Simple API for XML (SAX)

    org.omg.CORBA - API para trabalhar com CORBA

    java.rmi - classes para trabalhar com RMI

    java.security - classes e interfaces do Java Security Framework

  • era só o que faltava

    decorar todos os nomes de pacote do java

    #prácabámesmo


ID
148324
Banca
FCC
Órgão
TRT - 16ª REGIÃO (MA)
Ano
2009
Provas
Disciplina
Programação
Assuntos

Uma classe Java pode ser instanciada por um comando, cuja sintaxe é

Alternativas
Comentários
  • Lucas, se for seguindo seu raciocínio, apenas a letra C estaria errada.

  • Exemplo: String texto = new String();

  • nome_Classe nome_Objeto = new nome_Classe();

    Em Java, uma instancia de uma classe é interpretada como uma referência para um objeto e não o objeto propriamente dito. Para se criar um objeto deve-se declarar uma referência para o objeto e, em seguida, se construir o objeto com a clausula new

    Declaração de um Obejto:

    - nomeClasse nomeObjeto;

    - Cria-se a referência, mas não se cria o objeto.

    - Criação do objeto através da clausula new


ID
148327
Banca
FCC
Órgão
TRT - 16ª REGIÃO (MA)
Ano
2009
Provas
Disciplina
Programação
Assuntos

A diretiva public é utilizada em Java para aplicar a encapsulação pública

Alternativas
Comentários
  • Public:

    O modificador public deixará visível a classe ou membro para todas as outras classes, subclasses e pacotes do projeto Java 

  • Access Specifiers - They are used to set the visibility of a class or variable or a method.Classes can be Public or Default. Variables and methods can be public, private, protected or default.Access Modifiers - They are used to optionally declare a field. That is we can set access modifiers for class, method or variables.Classes can have modifier like Abstract. Methods can have abstract, native, synchronised etc..
     

ID
149431
Banca
FCC
Órgão
TJ-SE
Ano
2009
Provas
Disciplina
Programação
Assuntos

Um objeto é instanciado em Java por meio do operador

Alternativas
Comentários
  • Questão bem simples, para quem já trabalhou com Java.

    a) errada. Esse operador serve para descobrir a instância de um objeto, depois que ele já foi criado. Instanceof de um objeto, retorna a classe em que ele foi instanciado.

    b) errada. Esse operador serve para informar que uma classe estende (é filha) de outra.

    c) correta.

    d) errada. Esse operador serve para referenciar o próprio objeto, ou seja, this.alguma_coisa se refere ao objeto atual da classe.

    e) errada. Se não me engano, é um tipo primitivo de dados do java, como int, char, etc..

ID
149434
Banca
FCC
Órgão
TJ-SE
Ano
2009
Provas
Disciplina
Programação
Assuntos

Uma lista Java é uma coleção ordenada de elementos do mesmo tipo, conhecida por sequência. Os elementos de uma lista podem ser acessados pela sua posição, isto é, seu índice e são derivados da interface

Alternativas
Comentários
  •    A interface java.util.List é necessária para declarar variáveis do tipo List. Uma List é uma Collection só que mais especializada, ou seja, uma List é uma Collection com alguns atributos e operações a mais(extensão).
  • java.util 

    Interface Collection

    All Known Subinterfaces:

    BeanContextBeanContextServicesListSetSortedSet

    All Known Implementing Classes:

    AbstractCollectionAbstractListAbstractSetArrayListBeanContextServicesSupportBeanContextSupportHashSetLinkedHashSetLinkedListTreeSetVector

  • Elas implementam. Collection é uma interface. É correto dizer que estendem?

  • Olá, seria possivél a resposta correta também ser 

    java.util.Set, que estende a interface Collection.??

  • Uma lista é uma coleção ordenada de elementos do mesmo tipo, conhecida por seqüência. Os elementos de uma lista podem ser acessados pela sua posição, isto é, seu índice.

    OBS.: o primeiro elemento de qualquer lista tem índice 0 (zero).

    As listas são derivadas da interface java.util.List, que por sua vez, estende a interface Collection.

    As listas podem receber elementos iguais, ou seja, dois objetos x1 e x2, onde x1.equals(x2) retorna verdadeiro, além de múltiplos null. A interface List possui um iterator especial, o ListIterator, que permite o início da iteração em qualquer ponto da lista.

     

     

    Fonte: https://www.devmedia.com.br/colecoes-em-java-list/6026


ID
149437
Banca
FCC
Órgão
TJ-SE
Ano
2009
Provas
Disciplina
Programação
Assuntos

Os radio buttons são componentes de interface do usuário do Java do mesmo tipo do componente básico denominado

Alternativas
Comentários
  • d) check boxes.
    Controles radio button (botões de opção) são usados quando queremos que o usuário selecione apenas uma dentre duas ou mais opções.

ID
149968
Banca
CESPE / CEBRASPE
Órgão
ANAC
Ano
2009
Provas
Disciplina
Programação
Assuntos

Com relação a aspectos de linguagem de programação,
programação estruturada, programação orientada a objetos e
conceitos associados, julgue os itens de 106 a 113.

Na linguagem de programação Java, é recomendado o uso da estrutura while quando o programador sabe, previamente, a quantidade exata de iterações que ocorrem na estrutura.

Alternativas
Comentários
  • Quando se sabe previamente o numero de iterações que o trecho de código deverá fazer, é recomendável usar a estrutura for. Lembrando que é uma opção pessoal do programador, visto que qualquer das estruturas pode desempenhar a mesma tarefa...


ID
150022
Banca
CESPE / CEBRASPE
Órgão
TCE-AC
Ano
2009
Provas
Disciplina
Programação
Assuntos

Acerca da linguagem de programação Java, assinale a opção correta.

Alternativas

ID
152500
Banca
CESPE / CEBRASPE
Órgão
TRE-MG
Ano
2009
Provas
Disciplina
Programação
Assuntos

Com relação a linguagens de programação, assinale a opção correta.

Alternativas
Comentários
  • a) ERRADO. Lógico - um algoritmo pode ser visto como uma dedução lógica controlada. O componente lógico expressa os axiomas usados na computação e o componente de controle determina a maneira como a dedução é aplicada aos axiomas. Tal conceito é base para a programação lógica.

    b) ERRADO. Polimorfismo como um princípio a partir do qual as classes derivadas de uma única classe base são capazes de invocar os métodos que, embora apresentem a mesma assinatura, comportam-se de maneira diferente para cada uma das classes derivadas.

    c) ERRADO. Híbridas: São linguagens que originalmente não foram projetadas orientadas a objetos, mas que passaram a incorporar os conceitos deste paradigma. Ex: C++ e Object Pascal. "Puras: São linguagens que foram projetadas originalmente orientadas a objetos. Ex: Smalltalk e Java.

    e) ERRADO. Classes Smalltalk não podem ser aninhadas em outras classes. Uma subclasse Smalltalk herda todos os membros de sua superclasse. A superclasse também pode ter suas próprias variáveis de instancia, com nomes distintos dos da variáveis nas classes ancestrais. Por fim, a subclasse pode definir novos métodos e redefinir métodos já existentes em uma classe ancestral.


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
153511
Banca
FGV
Órgão
Senado Federal
Ano
2008
Provas
Disciplina
Programação
Assuntos

No contexto do Desenvolvimento WEB JAVA, analise as afirmativas a seguir, a respeito da tecnologia JSP ("JavaServer Page"):

I. Disponibiliza uma tecnologia simples e rápida para criar páginas que exibem conteúdo gerado dinamicamente, define a interação entre o servidor e a página JSP, e descreve o formato e sintaxe da página.
II. Emprega servlets - programas escritos na linguagem Java e executados no servidor, em oposição aos applets, executados no browser do cliente.
III. Utiliza páginas JSP, com extensão .jsp ou .jspx, criadas pelo desenvolvedor da web e que incluem especificações JSP e tags customizadas, em combinação com outras tags estáticas, HTML ou XML.

Assinale:

Alternativas
Comentários
  • O gabarito oficial diz que a resposta é letra B, e não D.
  • Qual é o erro da assertiva I??
  • Para mim há dois erros nesse gabarito: 

    1) para mim a I) estaria correto; 
    2) para mim a III) estaria errado. A questão fala "a respeito da tecnologia JSP ("JavaServer Page"):" e no item III ele fala de tags customizadas, eu tenho isso em JSP? pensei que isso só tivessemos no XML, por exemplo.

    Abraços!
  • Acredito que o erro da I seja "descreve o formato e sintaxe da página", já que isso é feito pelo HTML.
  • I. Disponibiliza uma tecnologia simples e rápida para criar páginas que exibem conteúdo gerado dinamicamente, define a interação entre o servidor e a página JSP, e descreve o formato e sintaxe da página. (O desenvolvedor da JSP não define estas interações, isto fica a cargo do Servidor de Aplicação e do Conteiner Web, como o Apache Tomcat.)

    II. Emprega servlets - programas escritos na linguagem Java e executados no servidor, em oposição aos applets, executados no browser do cliente. (Correto, toda página JSP, na primeira vez que é chamada, é traduzida em um .JAVA, compilada e executada como um servelet. )

    III. Utiliza páginas JSP, com extensão .jsp ou .jspx, criadas pelo desenvolvedor da web e que incluem especificações JSP e tags customizadas, em combinação com outras tags estáticas, HTML ou XML. (.JSP é HTML <%@include file="response.jsp" %> e .JSPX é XML <jsp:directive.include="response.jsp"/> As tags customizadas são as utilizadas com a JSTL (Java Server Pages Standard Tags Library) utilizáveis através do parâmetro @taglib, com estas tags é possível fazer uma página JSP sem código Java.)




ID
156961
Banca
CESPE / CEBRASPE
Órgão
TRT - 5ª Região (BA)
Ano
2008
Provas
Disciplina
Programação
Assuntos

Com relação a linguagens de programa, julgue os itens que se seguem.

Em Java, os métodos public de uma classe são utilizados pelos clientes da classe para manipular dados armazenados em objetos dessa classe.

Alternativas
Comentários
  • O modificador de acesso públic permite que o método seja acessado pelos "clientes" da classe e do mesmo pacote.
  • Gusmão
    é independente do pacote. 
  • Só eu achei essa afirmação genérica de mais?

    Marquei certo, mas com medo de ser pegadinha.

    Acredito que existam definições muito melhores que essa para as funções de um método public.

    Alguém sabe de onde o CESPE tirou isso?

     

     


ID
157525
Banca
CESPE / CEBRASPE
Órgão
TRT - 5ª Região (BA)
Ano
2008
Provas
Disciplina
Programação
Assuntos

Julgue os itens que se seguem com relação à arquitetura Java J2EE.

Applets são componentes que podem ser executados tanto do lado servidor quanto do lado cliente em qualquer aplicação Java.

Alternativas
Comentários
  • Applet é um software aplicativo que é executado no contexto de outro programa (como por exemplo um web browser), uma applet geralmente executa funções bem específicas. O termo foi introduzido pelo AppleScript em 1993.No contexto de Java, applets são aplicativos que se servem da JVM (Java Virtual Machine) existente na máquina cliente ou embutida no próprio navegador do cliente para interpretar o seu bytecode.

  • A questão está errada porque os Applets são executados sempre do lado cliente, através da máquina virtual Java no browser.

  • Uma applet é uma pequena aplicação executada em uma janela de uma aplicação (browser/appletviewer). Tem por finalidade estender as funcionalidades de browsers, adicionando som, animação, etc., provenientes de fontes (URLs) locais ou remotas, sendo que cada página web (arquivo .html) pode conter uma ou mais applets.

    O desenvolvimento ou não de programas em Java sob a forma de applets depende do objetivo da aplicação. Se por um lado a execução necessita de um navegador, por outro pode ser disponibilizada para execução via internet. Cabe ao projetista da aplicação definir a forma mais adequada para seu sistema.

    Applets sempre executam nos clientes web, nunca nos servidores. Por esta razão a carga das classes pode levar algum tempo.

    são os métodos que definem o ciclo de vida de uma applet:

    init( ) - inicialização; chamado quando a applet é inicialmente carregada;

    start( ) - execução (animação); chamado após o init( );

    stop( ) - interrupção; faz a applet parar a execução da animação, áudio ou vídeo;

    destroy( ) - liberação de recursos; chamado quando o browser é fechado.

    Toda applet é uma aplicação gráfica, não existindo portanto applets “modo texto”. A principal diferença entre uma “Java application” e uma “applet” é o fato de que a janela base da aplicação é derivada a partir da classe Applet (ou JApplet) e não a partir da classe Frame. Além disso, a parte da aplicação que instancia a classe Applet e relaciona-a com o browser é padrão e, portanto, não precisa ser descrita. Desta forma, applets não possuem a função “main( )”.


ID
157528
Banca
CESPE / CEBRASPE
Órgão
TRT - 5ª Região (BA)
Ano
2008
Provas
Disciplina
Programação
Assuntos

Julgue os itens que se seguem com relação à arquitetura Java J2EE.

Enterprise JavaBeans são componentes de negócios em Java que são executados do lado do cliente.

Alternativas
Comentários
  • EJB ou Enterprise JavaBeans é um dos principais componentes da plataforma J2EE (Java 2 Enterprise Edition). É um componente do tipo servidor que executa no container do servidor de aplicação. Os principais objectivos da tecnologia EJB são fornecer um rápido e simplificado desenvolvimento de aplicações Java baseado em componentes distribuídas, transacionais, seguras e portáveis.

    Apesar da semelhança nos nomes, os JavaBeans não devem ser confundidos com os Enterprise JavaBeans, ou EJBs, que são componentes utilizados em servidores e são parte da plataforma Java EE.

    A plataforma J2EE providencia algumas facilidades dedicadas à camada de lógica de negócio e para o acesso a banco de dados. Através do EJB o programador utiliza a infraestrutura do servidor de aplicação voltada para o desenvolvimento de aplicações de missão crítica (de alta importância para a empresa) e de aplicações empresariais em geral.

    Tipos de EJB's

    O componente EJB possui 3 (três) tipos fundamentais que são: Entity beans, Session Beans e Message Drive Beans.

    Session Beans

    Executa uma tarefa para o cliente. Pode manter o estado durante uma sessão com o cliente (Subtipo "Stateful") ou não (Subtipo "Stateless").

    Message Drive Beans

    Processa mensagens de modo assíncrono entre os ejb's e cuja API de mensagens é Java Message Service (JMS).

    Entity Beans

    Representa um objeto que vai persistir numa base de dados ou outra unidade de armazenamento.

     


ID
161539
Banca
FCC
Órgão
MPE-RS
Ano
2008
Provas
Disciplina
Programação
Assuntos

A função Java:

public boolean VerificarCPF (string CPF);

representa um exemplo do conceito de

Alternativas
Comentários
  • Letra D

    Encapsulamento vem de encapsular, que em programação orientada a objetos significa separar o programa em partes, o mais isoladas possível. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações.

    Para exemplificar, podemos pensar em uma dona de casa (usuário) utilizando um liquidificador (sistema). O usuário não necessita conhecer detalhes do funcionamento interno do sistema para poder utilizá-lo, precisa apenas conhecer a interface, no caso, os botões que controlam o liquidificador. Outro exemplo clássico de encapsulamento é o padrão de projeto chamado Mediator.
     

  • A questão acima apresenta um exemplo de declaração de método em uma interface, é possível identificar isso devido a finalização da assinatura com ponto e vírgula e da ausência do corpo do método (implementação).

    Uma interface é uma coleção de declarações de métodos sem dados e sem corpo.

    O conceito de encapsulamento estabelece que os diferentes componentes de um sistema não devem fornecer detalhes de sua implementação. O encapsulamento é alcançado através da declaração apenas da assinatura dos métodos em uma interface.

    Fonte: Estruturas de dados e algoritmos em JAVA Por MICHAEL T. GOODRICH,ROBERTO TAMASSIA
    http://books.google.com/books?id=7ogOGQ9VMBAC&lpg=PA72&dq=encapsulamento%20java%20interface&hl=pt-BR&pg=PA72#v=onepage&q=encapsulamento%20java%20interface&f=false
  • Ótimo Mileny. Só após seu comentário (aliás, aos coementários) entendi a resposta da questão. Parabens a ambos.
  • Como observado, o metodo é uma interface por nao estar implementado em nenhum objeto. INterfaces definem polimorfismo quando 2 elementos usam as mesmas interfaces em relação a um conjunto de comportamentos. 

    http://www.artima.com/objectsandjava/webuscript/PolymorphismInterfaces1.html

  • Gloomy Gulch, dizer que "metodo é uma interface" ficou totalmente sem sentido.

  • encapsulamento.


ID
161542
Banca
FCC
Órgão
MPE-RS
Ano
2008
Provas
Disciplina
Programação
Assuntos

NÃO é um modificador Java que altera a natureza do
elemento ao qual é aplicado:

Alternativas
Comentários
  • Letra C

    O modificador de acesso public é aquele que permite o maior grau de acesso a um recurso Java (um recurso é uma classe, um método ou uma variável).

    O único modificador de acesso permitido a uma classe não interna é public. Não é permitido usar outro modificador. Na ausência do modificador public, o acesso à classe será de pacote (package).

    Quando usamos este modificador, as classes, métodos e variáveis podem ser acessadas a partir de qualquer outra classe sem qualquer restrição. Além disso, um método public pode ser sobrescrito por qualquer subclasse da classe que o declara.

    O método main() da aplicação é declarado public para que o ambiente de execução Java tenha acesso a ele. Declará-lo de outra forma fará com que a execução da aplicação se torne impossível.



     

  • Não entendi o pq da resposta ser a letra C. Modificadores de acesso não são da natureza do elemento?

  • Access Specifiers: public, private, protected and default.

    Access Modifiers: abstract, native, transient, final, static, volatile and strictfp.

     

    Fonte >> http://www.allinterview.com/showanswers/1065.html

  • http://www.tutorialspoint.com/java/java_nonaccess_modifiers.htm
  • Access Specifiers - They are used to set the visibility of a class or variable or a method. Classes can be Public or Default. Variables and methods can be public, private, protected or default.Access Modifiers - They are used to optionally declare a field. That is we can set access modifiers for class, method or variables. Classes can have modifier like Abstract. Methods can have abstract, native, synchronised etc.Fonte: http://www.allinterview.com/showanswers/1065.html 

ID
161563
Banca
FCC
Órgão
MPE-RS
Ano
2008
Provas
Disciplina
Programação
Assuntos

Para incluir blocos de código Java em uma página JSP utiliza-se a categoria de tags denominada

Alternativas
Comentários
  • Nomeclatura em JSP das alternativas para fixar:

    a) <%@  . . . %>
    ex: <%@ page language="java" %>

    b) <%= . . . %>
    ex: <%= Calendar.getInstance().getTime(); %>

    c) <%! . . . %>
    ex: <%! int visitas = 0; %>

    d)<% . . . %>
    ex: <% String userName=null; userName=request.getParameter("userName"); %>

    e) <%-- commentario --%>
       <% /* commentario */ %>
  • Essa questão é fácil só de olhar as alternativas eu ja vi qual era a resposta

    scriptlets

    Alternativa Letra D

    Bons Estudos !!

     

    Paulooo.

  •  a) Esta tag permite dar informação sobre a página ao motor JSP. Existe 3 tipos de directivas:

    Page - processa informação para esta página. Existem 11 atributos opcionais.sintaxe: <%@ page atributo=”valor” %>
    Include – arquivos para serem incluidos. Sintaxe: <%@ include file=”pagina.jsp” %>
    Taglib- Define uma biblioteca a ser usada. Precisa de um prefixo e de um url: Sintaxe: <%@ taglib prefix = "prefixo" uri = "taglib.tld" %>
     
    b) Esta tag permite mostrar algum resultado.
     
    c) Esta tag permite declarar variáveis e métodos.
     
    d) O código entre <% %> é chamado de scriptlet. Essa tag é utilizada para inserir blocos de código java dentro da JSP
     
    e) Comentários são usados para descrever trechos de código para outros programadores entenderem melhor o que está sendo feito naquele ponto.

ID
162739
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Programação
Assuntos

Toda applet Java possui uma área de tela para criar sua exibição denominada canvas, que é controlada por parâmetros inclusos em um(a)

Alternativas
Comentários
  • eis um exemplo de tag html para inclusao de um applet Java para exibicao canvas

    <html>002<head>003    <title>ExemploApplet</title>004</head>005<body>006    <center>007        <object008            width="640"009            height="480"010            type="application/x-java-applet"011            classid="java:exemploapplet/Main.class">012            <param name="code" value="exemploapplet/Main.class" />013            <param name="archive" value="ExemploApplet.jar" />014        </object>015    </center>016</body>017</html>Nessa pagina tem um tutorial explciando o exemplo. espero que ajude a esclarecerhttp://abrindoojogo.com.br/criando-um-applet-basicoBons estudos

ID
162745
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Programação
Assuntos

Com relação à programação em Java, para que a classe Graphics, que faz parte do pacote awt, possa ser usada em uma applet, é necessário que sejam incluídas, na parte superior do código da applet, as linhas

Alternativas
Comentários
  • Bem o enunciado já define o item dizendo que o Graphics faz parte do pacote awt.

ID
163603
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Programação
Assuntos

Abaixo são exibidas expressões na linguagem Java, nas quais a, b e c são variáveis do tipo boolean. Qual, dentre as expressões que, ao ser avaliada, resulta em um valor diferente das demais?

Alternativas
Comentários
  • Para os valores de a=V, b=F e c=F, temos:

    letra a) F, b) V, c) F, d) F e e) F

    Portanto, resposta letra b !

  • Essa é bem trabalhosa. A questão quer saber qual dentre as alternativas (a, b, c, d ou e) apresenta um valor diferente das demais, ou seja, qual das alternativas tem uma tabela verdade diferente das outras. Podemos deduzir então que, implicitamente, todas as outras 4 alternativas tem tabelas verdade exatamente iguais. Logo, para sabermos a alternativa que distoa basta que PELO MENOS uma linhas da tabela verdade seja diferente. Outra coisa que se pode observar é que a alternativa "a" e "d" são exatamente iguais, logo nenhuma das duas é a resposta que estamos procurando, podemos muito bem descartá-las para facilitar o trabalho.
     
    A forma clássica de resolver isso seria fazer uma tabela verdade das 3 variáveis com as 3 alternativas que sobraram, assim:
    A|B|C - b|c|e
    -+-+-----+-+- 
    V|V|V -  | | 
    V|V|F -  | | 
    V|F|V -  | | 
    V|F|F -  | |
    F|V|V -  | | 
    F|V|F -  | | 
    F|F|V -  | |
    F|F|F -  | |   
    Para preencher o resto das linhas de forma mais rápida temos que nos lembrar de dois truques básicos: 
     1. Numa expressão do tipo "OU" inclusivo quando um dos parâmetros é verdadeiro o resultado é verdadeiro;
     2. Numa expressão do tipo "E" quando um dos parâmetros é falso o resultado é falso.
     
    Aplicando os conceitos acima temos:
    - A alternativa "b" é falsa quando a variável B é falsa (conceito 1)
    - Na alternativa "c", quando A é verdadeira, tudo pode ser cortado e a expressão assume o valor de B (conceito 2)

    O resto deve ser clculado/simplificado usando a tabela verdade como referência. A tabela verdade final fica assim:
    A|B|C - b|c|e
    -+-+-----+-+- 
    V|V|V - V|V|V
    V|V|F - V|V|V
    V|F|V - F|F|F
    V|F|F - V|F|F
    F|V|V - V|V|V
    F|V|F - V|V|V
    F|F|V - F|F|F
    F|F|F - V|V|V                  
     
  • E ainda tinha que lembrar que o operador "^" é o XOR (ou exclusivo) em JAVA.
    Questão chata, a melhor forma de fazer é mesmo substituindo as variáveis por V ou F.
  • Excelente comentário do arthur.

    Para facilitar a visualização, segue abaixo em vermelho a relação inicial das variáveis ac.

    Em seguida, coloquei em azul as respostas de cada alternativa.

    Somente a alternativa B ficou com o resultado diferente na situação em que a variável a for verdadeira e as demais forem falsas.

     

    a    b   c   A   B   C   D   E

    V   V   V   V   V   V   V   V

    V   V   F   V   V   V   V   V

    V   F   V   F   F    F   F   F

    V   F   F   F   V    F   F   F

    F   V   V   V   V   V   V   V

    F   V   F   V   V   V   V   V

    F   F   V   F   F    F   F   F

    F   F   F   V   V   V   V   V


ID
163708
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Programação
Assuntos

Em linguagens de programação, palavras-chaves são aquelas palavras ou identificadores que têm um significado implícito e relevante para a linguagem de programação. Em muitas linguagens, estas palavras-chaves são também palavras reservadas, isto é, não podem ser usadas em outros contextos, pois são reservadas para usos específicos da gramática da linguagem de programação. A linguagem Java possui um pequeno núcleo de palavras reservadas, incluindo os comandos de controle de fluxo (for, while, etc), identificadores de nível de acesso à classe (public, private, etc). Qual das seguintes descrições representa a correta aplicação do conceito de palavras reservadas em Java?

Alternativas
Comentários
  • a) o println é um nome de um método de uma classe nativa do java. Não é caracterizado como uma palavras reservada e qualquer classe de usuario pode conter um método println. ERRADO

    b) Nomes de pacotes e de classe não podem contar palavras reservadas. ERRADO

    c) Caso se utiliza um prefixo ou sufixo com alguma palavra reservada(como "_while" ou "while2"), o interpretador não identifica aquilo como uma palavra reservada, uma vez que o simbolo é analisado em todo seu nome de identificação. ERRADO

    d) Desde que separadas em pacotes, classes podem ter nomes iguais sim, inclusive os mesmos nomes de classes nativas existentes no proprio framwork. CERTO

    e) Mesma justificativa da letra "b":  Nomes de pacotes e de classe não podem contar palavras reservadas. Mesmo no exemplo 'package meupacote.while', o termo 'while' se refere a uma classe dentro do pacote 'meupacote'. ERRADO

ID
171298
Banca
FGV
Órgão
MEC
Ano
2009
Provas
Disciplina
Programação
Assuntos

O pacote "java.sql" da API Java consiste de um conjunto de classes e interfaces que permitem embutir código SQL em métodos Java para por meio de drivers JDBC acessar diversos SGBDs.
As alternativas a seguir apresentam interfaces do pacote "java.sql", à exceção de uma. Assinale-a.

Alternativas
Comentários
  • (D = correta): DriverManager é uma classe e não uma interface como afirma a questão.

  • Questão estilo "pegadinha".

  • https://docs.oracle.com/javase/7/docs/api/java/sql/package-summary.html


ID
171748
Banca
CESPE / CEBRASPE
Órgão
Banco da Amazônia
Ano
2010
Provas
Disciplina
Programação
Assuntos

A Web 2.0 é uma recente tendência de uso da Web como
plataforma, envolvendo redes sociais e ferramentas com maior grau
de interação e colaboração, porém não faz uso de novas linguagens
de programação, mas sim de novo modo de utilização das já
existentes. Quanto à temática de linguagens para a Web, julgue os
itens de 93 a 102.

A sintaxe da linguagem JavaScript assemelha-se muito à da Java e da C++, por exemplo, na criação de objetos usando o operador new e na definição de classes usando a diretiva class.

Alternativas
Comentários
  • ERRADO.

    É semelhante: na criação de objetos usando o operador new.

    Não é semelhante: na definição de classes usando a diretiva class.

  • JavaScript realmente é semelhante a Java e a C++ na criação de objetos usando o operador new. Até aqui tudo bem.
    Entretanto, JavaScript NÃO utiliza a diretiva class na definição de classes.

    Em JavaScript não existe o conceito de classes como em Java ou C++.
    É possível criar pseudo-classes em JavaScript definindo uma função.
    Observem:

    function Pessoa(n, i) {
        this.nome = n;
        this.idade = i;
    }
    var pedro = new Pessoa("Pedro", 25)
    Portanto, item Errado.
  • Questão desatualizada!

    JavaScript classes introduced in ECMAScript 2015 are syntactical sugar over JavaScript's existing prototype-based inheritance. The class syntax is not introducing a new object-oriented inheritance model to JavaScript. JavaScript classes provide a much simpler and clearer syntax to create objects and deal with inheritance.

    ....

    Class declarations

    One way to define a class is using a class declaration. To declare a class, you use the classkeyword with the name of the class ("Rectangle" here).

    class Rectangle {

         constructor(height, width) { this.height = height; this.width = width; }

    }

    REFERÊNCIA: 

    https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Classes


ID
174433
Banca
FGV
Órgão
MEC
Ano
2009
Provas
Disciplina
Programação
Assuntos

A respeito da linguagem Java, é incorreto afirmar que:

Alternativas
Comentários
  •  Em um sistema desenvolvido em Java, cada arquivo do sistema operacional de código fonte só pode ter uma única classe e essa classe tem que ter o mesmo nome do arquivo. 

    Falso porque o arquivo e a classe realmente devem ter o mesmo nome  Class.java deve ter uma classe Classe.

    Porém um arquivo pode sim ter mais de uma classe, só não pode ser public. Nested class, por exemplo.

  • Na letra A, escreve-se "estendida" e não "extendida".