Avalição II (Teórica) 22/06/2017 Disciplina Linguagem de Programação II Prof. Wagner, dos Santos C. de Jesus Curso Engenharia da Computação Questões Solução da Avaliação 1) Responda de acordo com os conceitos de orientação a objetos (0,5). a) Escreva sobre as características do método construtor. b) O que vem a ser uma estrutura dinâmica escreva que tipo de classe Java realizada esse processo automaticamente. a) Com relação ao conceito de construtores, são métodos que não permitem retorno de valores, são identificados, colocando-se o mesmo nome da classe, não permitem identificação de visibilidade. b) Estruturas de dados dinâmicas, são estruturas, que podem ser modificadas durante o tempo de execução do programa. 2) Complete a classe TrataEv de forma que possa calcular os valores para obtenção do gráfico da função f(x) = x 3, onde x [-9 a 9] e armazena-los na caixa de lista (1,0). class TrataEv implements ActionListener { public void actionperformed(actionevent e) { Object botao = e.getsource(); if (btn1 == botao) { lista.additem(...); class TrataEv implements ActionListener { public void actionperformed(actionevent e) { Object botao = e.getsource(); if (btn1 == botao) { for(int x=-9;x<=9;x++){ double fx = Math.pow(x,3); Double numero=new Double(fx); System.out.println(numero); lista.additem(numero.tostring());
Observação: Você não deve desenhar o gráfico apenas mostrar os valores na lista. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3) Em programação Orientada à Objetos, usa-se um conceito denominado Taxonomia; comente tecnicamente porque classes estáticas podem atrapalhar esse conceito (1,0). Classes estáticas atrapalham o conceito de taxonomia devido a sua característica de não poderem ser instanciadas, e ou herdada por outras classes. 4) Análise o método abaixo. E escreva qual será sua saída após a execução; considere que o valor da variável numero = 123AC345. Justifique sua resposta (1,0). public boolean verifdigito(string numero){ boolean flag = true; for(int i=0;i<=numero.length()-1;i++) { char caract = numero.charat(i); if(!character.isdigit(caract)) { flag = false; break; return flag; O método tem como característica verificar se todos os dígitos passados como parâmetros são números, caso contrário retornará verdadeiro.
5) Observe o trecho de código abaixo e termine-o com a finalidade de colocar um botão de comandos, caixa de texto e um Rótulo com a descrição do nome, tamanho e exibição do formulário. Você deve manter a sequência informada (0,5). public Testeawt(){ setlayout(new FlowLayout()); btn1 = new Button("Ok"); text1 = new TextField(20); lab1 = new Label("Nome:"); public Testeawt(){ setlayout(new FlowLayout()); btn1 = new Button("Ok"); text1 = new TextField(20); lab1 = new Label("Nome:"); add(lab1); add(text1); add(btn1); setsize(400,300); setvisible(true); 6) O trecho de código abaixo remete-se a uma janela que deverá ter uma caixa de texto, nas coordenadas 123,46 e tamanho 121,21; Caixa de lista coordenadas 124,89 e tamanho 121,97; botão nas coordenadas 150,199 e tamanho 75,25; realize a adaptação neste programa que permita entrar com um número e armazenar o resultado da tabuada em uma caixa de lista (1,0). import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Form1 extends JFrame{ public Form1(){ Container JANELA = getcontentpane(); JANELA.setLayout(null); TrataEv trat = new TrataEv(); <botão_comandos>.addactionlistener(trat); setsize(400,300); setvisible(true); Resposta no link: http://www1.univap.br/wagner/form1.java
7) Um engenheiro precisava, realizar uma análise, em um determinado experimento que seu comportamento era equacionado com f(x) = Ae x. Observando o diagrama de classe abaixo faça a implementação usando sobrecarga de forma a retornar resultado do cálculo (1,0). class Funcao_dados { private int x = 1; private int A; public void setx(int x){ this.x = x; public int getx(){ return this.x; public void seta(int A){ this.a = A; public int geta(){ return this.a; public class Exponenciais { Funcao_dados dados = new Funcao_dados(); public double f(int x, int A) { dados.setx(x); dados.seta(a); return dados.geta() * Math.exp(dados.getX()); public double f(int A) { dados.seta(a); return dados.geta() * Math.exp(dados.getX());
8) O programa abaixo usa o conceito de DAO para realizar a leitura de dados de uma tabela com campo nome; reescreva a modificação necessária para que ocorra a gravação do nome na mesma tabela (2,0). Comente a função do DAO e do DTO e justifique sua utilização em programas que usam Banco de Dados. import java.sql.*; public class Lebanco{ public static void main(string args[]){ DAO database = new DAO(); database.banco(); database.open(); try { String sql = "Select * from teste"; ResultSet ressql = database.executequery(sql); // Executa Query while(ressql.next()){ String w_nome=ressql.getstring("nome"); System.out.println("Nome: " + w_nome.trim() ); database.close(); catch(exception error ){ System.out.println(error.getMessage()); class GravaDAO { GravaDAO(DTO dadosdto){ DAO database = new DAO(); database.banco(); // Carrega Drivers e Url do banco de dados database.open(); // Cria a conexão com o banco de dados String sql = "Insert into teste(nome) values( "; sql+="'"+dadosdto.getnome()+"')" ; int reg = database.executeupdate(sql); // Executa Query if(reg!= 0) System.out.println(" *** Registro Gravado com Sucesso ***"); database.close();