Escolar Documentos
Profissional Documentos
Cultura Documentos
Capítulo 1 e 2:
39) Como garantir que um grande projeto de sistema POO seja concebível e seguro?
É necessário seguir um processo de análise detalhada para determinar os requisitos do sistema, seu código e seu
design antes de começar a digitar. Esse processo longo e minucioso é garantido pela ferramenta OOAD (Análise e Projetos
Orientados a Objeto). Todo o projeto é comumente revisado por vários profissionais de SW para garantir sua integridade.
53) Quais são os aplicativos voltados para edição de programas OO e os tipos entre eles?
Há pequenos aplicativos apenas para editar códigos JAVA como o bloco de notas do Windows, o TextEdit do OS X, e
editores on-line como Notepad++, EditPlus, TextPad e jEdit. No entanto, uma programação completa pode ser realizada em
Ambientes de Deseolvolvimento Integrado (IDEs) que fornecem ferramentas de desenvolvimento de SW como editores e
depuradores para encontrar erros lógicos. Dentre os ambientes temos o Eclipse, o NetBeans e o Intellij IDEA.
55) Como os aplicativos Java são executados em plataformas diferentes sem necessidade de recompilação?
A principal peça para essa possibilidade é a máquina virtual (VM) que é um aplicativo de software que simula um
computador, mas oculta o sistema operacional e os hardwares que interagem com ele. A VM é a base da plataforma Java e
parte do JDK. O compilador Java converte o código-fonte em bytecodes que são executados pelo Java VM, uma das
máquinas virtuais mais utilizadas.
70) Para que servem os Mashups e qual foi uma de suas primeiras aplicações?
São uma metodologia que permite desenvolver rapidamente aplicativos poderosos combinando serviços Web
complementares e outras formas de feed de informações. Um dos primeiros mashups combinava anúncio imobiliário com o
Google Maps.
77) Além de aplicativos, o que mais são oferecidos como serviço atualmente?
Plataformas são oferecidas como serviço denomiado PaaS e executadas que permitem desenvolver e executar
aplicativos via Web também. Exemplos de PaaS são Google App Engine, Amazon EC2, e Windows Azure.
78) Qual a importância da Computação em Nuvem como ferramenta para desenvolvimento de SW?
SaaS e PaaS são exemplos de computação em nuvem cujos dados estão hospedados em servidores conectados à
internet onde os clientes aproveitam as facilidades dos serviços on-line para suas necessidades específicas. Essa
tecnologia permite a economia em hardware, atualizações, softwares e seu gerenciamento, visto que boa parte do
processamente é realizado remotamente.
81) Quais são e quais as características dos programas em suas respectivas versões?
Alfa: Primeira versão com desenvolvimento ativo. Contém muitos erros que serão testados e reportados por um
pequeno números de desenvolvedores.
Beta: Boa parte dos erros foram corrigidos e recursos quase completos. Voltados a um número maior de
desenvolvedores. Mais estável e sujeito à atualização.
Candidatos a lançamento: Também chamados de "release cantidatos", possuem quase todos os recursos e
praticamente sem erros, portanto livre para teste ma comunidade.
Versão final: Últimos erros corrigidos, se existirem, e lançados para o público em geral que recebem, geralmente,
atualizações on-line.
Beta contímuo: São aplicativos hospedados em nuvem que não possuem versões e são atualizados constantemente
através de "evolução de software". Exemplos desse tipo de software é o software de pesquisa Google.
82) Como fazer comentários em código-fonte Java?
Usando delimitadores como barras ou barra com asterisco e o compilador ignora textos seguindo as delimitações
abaixo, exceto em comentários Javadoc.
// Comentário de fim de linha (Começa após as barras e termina na mesma linha)
/* Comentário tradicional */ (Distribuídos entre várias linhas)
//** Comentários Javadoc. */ (Permite incorporar documentação)
Essas delimitações funcionam em C e C++.
83) Como funcionam os comentários Javadoc. e qual a diferença entre os tipos comuns?
O comentário Javadoc. fazem parte do JDK e permite incorporar a documentação do programa diretamente aos
programas para aplicações HTML. São o formato de comentário preferido na indústria.
91) O que significa "main" em "public static void main (String [] args)" ?
É o identificador do método contido em uma classe que inicia a execução do aplicativo Java. Pelo menos um dos
métodos em aplicativos Java deve ser chamado "main".
93) O que significa "void" em "public static void main (String [] args)"?
Os métodos podem retornar algum valor, mas quando são definidos com "void" eles não retornam nenhum.
94) O que é o corpo da declaração do método?
Assim como a classe tem seu corpo e dentro dele um ou mais métodos, cada método possui seu corpo que também
inicia e termina com chaves e dentro dele uma instrução para o computador executar uma ação.
97) Qual o nome da janela onde são inseridas ou exibidas informações da execução de programas Java?
No Windows se chama "prompt de comando". No Unix, Linux e Mac OS X se chama "terminal" ou "shell".
Muitos programadores chamam simplesmente de "linha de comando".
117) Qual a única classe API que não precisa ser importada no código-fonte?
É a classe java.lang que permite implementar a classe "System.out" seguida do método "print". O Java importa essa
classe toda vez que um programa é iniciado.
118) O que é e o que faz o declaração "imput.nextInt()"?
Essa declaração, também chamada de expressão porque tem um valor associado (é um inteiro digitado pelo usuário),
é uma instrução de atribuição. A parte "nextInt" é um método do objeto "Scanner" para aguardar e inseir numa variável
(imput) um inteiro digitado pelo usário após apertar "enter" no teclado.
120) Qual erro ocorre se um usuário digitar um tipo de dado não solicitado?
Ocorre um "erro de lógica em tempo de execução" e o programa encerra. Um "tratamento de exceção" pode pode lidar
com esse erro e tornar o programa mais tolerante às falhas.
125) Porque armazenar uma variável na memória pode ser considerado um processo "destrutivo"?
Porque um dado na memória precisa ser apagado para dar lugar a outro dado, como uma variável criada durante a
execução de um programa.
127) Como fazer um computador tomar uma decisão baseada na linguagem Java?
Através de operadores de igualdade e relacionais que permitem o computador tomar decisões baseados em
resultados booleanos como "verdadeiro" ou "falso". Um dos métodos que usam operadores desses tipos é o método "if" em
Java que sempre inicia com essa palavra chave (if).
131) Qual é uma das principais restrições de uma classe declarada como "public"?
Essa declaração deve ser salva em um arquivo .java com mesmo nome da classe.
Capítulo 3:
135) Objetos tem variáveis que são cópias das variáveis da classe. Objetos são instâncias das classes.
136) As classes acessam e manipulam as instâncias de seus objetos.
137) Variáveis de instância são declaradas dentro do corpo da classe, mas fora do corpo do método.
138) Variáveis de instância podem ser manipuladas por cada um dos métodos da classe.
139) O modificador de acesso "public" permite que objetos de outras classes tenham acesso às variáveis e métodos
dessa classe "public", porém o modificador "private" permite que apenas métodos da mesma classe tenham acesso as
suas variáveis.
140) "Tipo de retorno" é declarado imediatamente antes do nome do método e define a qualidade dos dados
retornados ao chamador quando terminar a tarefa.
141) "Void" é um tipo de retorno que não permite ao método Scanner e nextInt retornarem valor.
142) Métodos set e get geralmente não retornam valores e por isso usam retorno do tipo "void".
143) Parâmetros são informações contidas entre parênteses na chamada de método.
144) Lista de parâmetros são parâmetros e seus respectivos tipos na chamada de método.
145) Variáveis locais são especificadas no corpo do método e somente acessíveis a ele.
151) Usar "this" não é obrigatório, mas evita o acúmulo de nomes de identificadores.
152) Os métodos "set" e "get" configuram e obtem valores respectivamente.
153) this.name = name → Armazena nome e associa com sua variável de instância pela chave "this".
154) return name → Retorna valor de "name" ao chamador do método "set" ou "get".
155) Classe condutora (class driver) contém um método main que acessa métodos de outras classes.
166) Diagramas UML permitem que especificar um sistema de maneira gráfica independente da linguagem.
167) Um diagrama de classe UML contém partes: Compartimentos superior, intermediário e inferior.
168) Compartimento superior: Nome da classe, centralizado e em negrito.
169) Compart. Intermed.: Contém o sinal do tipo, o tipo e o nome da variável de instância, nessa ordem.
170) Compart. Inferior: Contém as operações e métodos. Sinal + nome método + nome variável + tipo retorno.
171) "static" permite ao "main" executar o aplicativo sem criar o objeto da classe no qual o "main" está.
172) String e System são classes contidas no pacote java.lang do API importados implicitamente.
173) Classes compiladas num mesmo diretório formam um pacote padrão importado implicitamente.
174) Classes podem ser importadas junto com suas declarações: java.util.Scanner = new java.util.Scanner (System.in);
175) Declarar variáveis de instância com modificador private é "ocultar os dados ou informações".
181) Variáveis do tipo primitivo não fazem referência a métodos, por isso não os invocam.
182) Construtor permite uma inicialização personalizada de um objeto de uma classe.
183) O construtor deve ter nome da classe "condutora", mas valor inserido no método main.
184) O construtor deve associar sua variável local à variável de instância pela chave "this".
185) Construtores não retornam valores, por isso não possuem tipo de retorno, nem mesmo "void".
191) O método "get" permite aos clientes (classes explicitas) acessarem valores das variáveis.
192) Importante inicializar valor somente "se" obedecer regra (>0) no construtor. Senão valor padrão.
193) Para exibir valor do tipo double e float em saídas formadadas usamos o espedificador de formato %f.
194) Para determinar a quantidade de casas decimais em saídas formatadas declaramos % + .ncasas + f.
195) O truncamento do %f arredonda para a casa final mais próxima.
196) Variáveis locais podem ser inicializadas por valores inseridos pelo usuário (Scanner).
197) Haverá um erro de compilação quando for usar variável local não inicializada.
198) É sempre melhor haver um erro de compilação do que de execução.
199) displayNomeClasse é um método que recebe como parâmetro um objeto e permite chamadas.
200) JoptionPane é um pacote API que permite criar janelas de diálogo no Java.
201) import javax.swing.JOptionPane é o comando para importar JoptionPane e criar janelas de diálogo.
202) O pacote javax.swing contém muitos pacotes que permitem criar GUIs para aplicativos.
203) Estruturas de controle (Instruções de Controle) são de 3 tipos:
a) Instrução de Sequência:
i) Instruções realizadas sequencialmente, é o padrão de programação.
b) Instrução de Seleção (3 tipos);
i) Métodos if, if ...else e switch (seleção única, dupla e múltipla, respectivamente).
c) Instrução de Repetição (3 tipos);
i) Contém iterações ou instruções de loop;
ii) Métodos while, do ... while e for (pode ser for aprimorado);
iii) While (executa instruções 0+ vezes);
iiii) Do ... while (executa instruções 1+ vezes).