• Nenhum resultado encontrado

REVISÃO GERAL DE LÓGICA DE PROGRAMAÇÃO

N/A
N/A
Protected

Academic year: 2021

Share "REVISÃO GERAL DE LÓGICA DE PROGRAMAÇÃO"

Copied!
11
0
0

Texto

(1)

Introdução a Linguagem Java.

1. As características da linguagem Java.

 Orientada a objeto: Como conceito inicial, imagine a orientação a objeto como uma pratica de programação que torna possível elaborar programas a partir da geração de objetos que se comunicam entre si.

 Portabilidade: Java é uma linguagem multiplataforma, ou seja, pode ser executada em diferentes tipos de plataforma sem a necessidade de adaptação do código fonte.

 Suporte a Comunicação: uma das vantagens do Java é fornecer um grande conjunto de classes com funcionalidades especificas, ou seja, muitos detalhes de programação são encapsuladas em classes já prontas.Tais classes são desenvolvidas para suportar tecnologias avançadas de comunicação como protocolos TCP/IP, HTTP,FTP entre outros.

Regras gerais da Programação

.

Programa: conjunto de instruções que representam um algoritmo para a resolução de um problema. Estas instruções são escritas através de um conjunto de códigos, este conjunto possui regras de estruturação lógica e sintática própria. Dizemos que este conjunto de símbolos e regras (códigos) que formam uma linguagem de programação.

Regras para criação de algoritmos: Um algoritmo opera sobre um conjunto de entradas (no caso de um bolo: farinha, ovos, fermento, etc) de modo a gerar uma saída que seja útil (ou agradável) para o usuário (o bolo pronto). Um algoritmo tem 3 características importantes:

o Entrada: dados de entrada do algoritmo;

o Processamento: procedimentos utilizados para chegar ao resultado final; o Saída: dados já processados.

(2)

-

PADRONIZANDO NOMENCLATURA DAS CLASSES:

- Quando trabalhamos com POO, seguimos um padrão, este é um padrão UML (Modelo Universal da linguagem) //”Só comentar.” Nossos programas não aceitaram uma escrita normal, temos alguns padrões para trabalharmos. Algumas regras a seguir:

 Nunca começar o nome dos atributos ou métodos com números. Ex: 1Nome, 1Salario, 1Andar...  Não utilizar caracteres especiais. Ex: Eu&Você

 Não utilizar espaço nos nomes. Ex: Soma Par, (por causa do espaço).

 É permitido o uso do caracter especial underline ( _ ) apenas este. OBS: NÃO É ACONSELHADO O USO DO UNDERLINE.

 Não utilizar nomes de comandos (palavras reservadas) já existentes. Ex: if, printf, scanf, while, for, do…

 Não acentuar as palavras. Ex.: Média, Salário, Endereço.  Procure seguir um padrão Java para nomenclaturas: Elementos necessários para criação de classes.

Conceito de atributos:

São as variáveis declaradas dentro das classes, onde objetivo é “agrupar” os métodos e atributos que estejam relacionados entre si. Por exemplo, seja uma classe de nome Cliente:

Seus atributos podem ser: nomeCliente

enderecoCliente

Conceito de método:

São essencialmente procedimentos que podem manipular atributos de objetos para os quais o método foi definido.

Os métodos da classe Cliente descrita acima podem ser: consultaCliente

inserirCliente excluirCliente alterarCliente

Conceito de variável:

As variáveis nada mais são do que espaços alocados na memória do computador para guardar um determinado valor vindo do usuário.

Podemos ter variáveis chamadas Globais => são aquelas usadas por todo nosso programa e as usadas somente em algum momento especifico do programa, estas são chamadas parâmetros.

Conceito de Constante:

Chamamos constante toda variável que não trocam seu valor ao longo do programa, podemos ter como exemplo o valor de PI, é sempre um valor especifico inalterado.

(3)

Tipos de dados:

Todo programa em qualquer linguagem deve conter dados, ou seja, informações estas precisam ser declaradas e para isso a programação trabalha com tipos de dados.

Sabendo estas informações iniciais, podemos aprofundar os estudos sobre métodos, pois em programação utilizaremos dois tipos distintos:

Lembrando, métodos são essencialmente procedimentos que podem manipular atributos de objetos para os quais o método foi definido. Além dos atributos de objetos, métodos podem definir e manipular variáveis locais; também podem receber parâmetros por valor através da lista de argumentos. A forma genérica para a definição de um método em uma classe é:

Onde:

Modificador (opcional) é uma combinação de: public ou private; Tipo é um indicador do valor de retorno que:

_ Sem retorno: apenas executa uma ação, não trazendo nenhum tipo de retorno à classe. Ex.: andar(), comer().

*** Quando não leva retorno nenhum é sempre “void”.***

_ Com retorno: além de executar uma ação, retorna valores à classe; Ex.: sacarDinheiro():float.

Nome do método deve ser um identificador válido na linguagem Java;

Argumentos são representados por uma lista de parâmetros separados por vírgulas, onde para cada parâmetro é indicado primeiro o tipo e depois (separado por espaço) o nome.

Uma boa prática de programação é manter a funcionalidade de um método simples, desempenhando uma única tarefa. O nome do método deve refletir de modo adequado a tarefa realizada. Se a funcionalidade do método for simples, será fácil encontrar um nome adequado para o método. A representação das definições acima de dá pela pratica de criação de UML, ou seja, Unidade de Modelagem.

(4)

Inserção de comandos nos métodos (return):

São métodos que devolvem um valor à classe. Para isso devemos substituir a palavra void pelo tipo de valor a ser devolvido.

Operadores Aritméticos:

São chamados operadores aritméticos os símbolos utilizados para realizar as operações aritméticas (operações matemáticas). Vamos aprender as bases da programação começando pelas operações mais simples:

Na programação podemos calcular o resto de uma divisão. Para calcular o resto da divisão utilizamos o sinal de “%”.

Exemplo: 5%2 = 1 10%2 = 0

A utilização de parênteses é a mesma das equações algébricas. A precedência das operações também, isto é, primeiro o computador realizara as expressões dentro dos parênteses, respeitando as

precedências algébricas, depois realizará as multiplicações, divisões e módulos e depois as somas e multiplicações.

(5)

Para realizarmos potênciação no Java ou extrair a raiz de um número necessitamos utilizar uma classe que já contem esses métodos implementados, ou seja, prontos. O nome dessa classe é Math, onde: Math = Mathematic

Por ser uma classe no Java, sempre teremos que referenciá-la com a primeira letra em Maiúsculo. A potenciação será realizada através de um método dentro da classe Math chamado pow() e para extrair a raiz utilizaremos outro método da classe Math chamado sqrt().

Teste de Mesa:

O teste de mesa nada mais é que o teste do teu próprio código. Após fazer o código, nós vamos “abstrair“ mais um pouquinho e executar no papel cada passo do nosso código para ver o que acontece na memória ram do computador e para achar o estado interno de cada atributo do objeto.

Vamos implementar os métodos da classe número e REALIZAR UM TESTE DE MESA. Analise o código.

RESPOSTA:

Criando a classe Principal:

A classe principal em um sistema Java é o ponto de partida do sistema, onde dará o inicio à execução de uma aplicação para declará-lo utilizamos o termo main. O código será:

public static void main , onde:

public: mostra a visibilidade da classe, com este termo definimos que de qualquer lugar essa classe pode ser acessada;

static: indica que o método deve ser compartilhado; void: como já vimos, indica que o método não terá retorno; main: indica o método principal da classe.

(6)

Saída de dados:

Método conhecido como print ou println, onde através dele podemos mostrar ao usuário informações na tela, criando assim uma comunicação entre o nosso programa e o usuário. Este método (print), pertence a classe System, e se tratando de uma saída de dados utilizaremos o atributo out. Portanto: System.out.println(“Minha primeira frase.”); // Esta linha de código imprime a mensagem entre aspas na tela.

O método System.out.printl, pode conter somente textos, somente resultado de variáveis ou ambos, como representá-los:

Depois do acréscimo das informações podemos complementar a nossa UML vista lá no inicio.

COMO ERA NO INICIO APÓS A IMPLEMENTAÇÃO DOS DADOS

Instanciando objetos:

Para instanciarmos um objeto, ou seja, criar um objeto na nossa classe, utilizaremos o operador new. Obs.: A criação do objeto é feita na classe Main.

Exemplo1: Criar uma pessoa Thais na classe Pessoa: Pessoa Nemora = new Pessoa

Exemplo 2: Classe Lampada Lampada lamp1 = nem Lampada

(7)

public class Lampada{ String status;

public void ligar(){ status = "Ligada"; }

public void desligar(){ status = "desligada"; }

public void exibirLampada(){

System.out.println("A lampada está: "+status);

} }

public class TesteLampada{

public static void main(String args[]){

System.out.println("Super incrível Projeto Lampada!"); Lampada lamp1 = new Lampada();

lamp1.ligar(); lamp1.exibirLampada(); lamp1.desligar(); lamp1.exibirLampada(); } }

Entrada de dados:

Muito semelhante a saída de dados, com um grande detalhe, aqui dependemos do usuário digitar a informação correta.

Para o funcionamento do mesmo utilizaremos a classe Scanner, porém devemos importar a classe para que possamos utilizá-la:

SEM ENTRADA DE DADOS COM ENTRADA DE DADOS

public class Main{

public static void main(String args[ ]){ }

}

import Java.util.Scanner; public class Main{

public static void main(String args[ ]){ Scanner recebe = new Scanner(System.in); }

} Para cara entrada de dados temos uma leitura diferente:

(8)

Lista de Exercícios – COM RESPOSTAS.

1) Modele uma classe chamada Bascara com os atributos e métodos necessários. Monte sua sintexe Java.

public class Baskara{ double x1, x2, a, b, c;

public double calcularRaiz( ){ return ((b*b)-(4*a*c)); }

public void calcularX1X2( ){

x1 = (-b + Math.sqrt(calcularRaiz()))/ (2*a);

x2 = (-b - Math.sqrt(calcularRaiz()))/(2*a); }

public void mostrarValores( ){

System.out.println("O valor de x'="+x1+" e x''="+x2);

} }

2) Modele uma classe círculo, que tenha os atributos e métodos necessários para calcular o perímetro. Monte sua sintaxe Java.

public class Circulo{ double raio;

public double calcularPerimetro( ){ return 2*3,14*raio;

}

public void mostrarValores( ){ System.out.println("O valor de do perímetro é:” +calcularPerimetro()); }

}

3) Marque o tipo de dado mais adequado para os atributos abaixo, sendo i=int, b=byte, bo=boolean, d=double e S=string

a.Idade b b.Salário d c.E-mail S d.Dia de nascimento b e.Signo S f.Número de filhos b g.Peso em gramas d h.Peso em quilos d i.Comprimento em metros d j.Comprimento em centímetros d k.Quilometragem do veículo d l.Preço por litro d

(9)

4) Para que serve uma classe? Cite exemplos de classes.

Classe é uma abstração que define um tipo de objeto e o que deste determinado tipo tem dentro deles (seus atributos) e também define que tipo de objeto é capaz de realizar (métodos).Uma classe não tem vida, é só um conceito. Exemplo: Animal, Pessoa, Veículo.

5) O que é um método?

São essencialmente procedimentos que podem manipular atributos de objetos para osquais o método foi definido. Além dos atributos de objetos, métodos podem definir e manipularvariáveis locais; também podem receber parâmetros por valor através da lista de argumentos.

6) Explique o que significa “public static void main(String[] args)”

7) Dada a classe abaixo, responda: atrib1: int atrib2: int atrib3: double processo1():void processo2(dado1: double):int processo 3():double

processo 4(dado1:int, dado2:String):String processo 5(dado1:String):void

a. Quantos métodos de retorno essa classe possui? 3

b. Todos os métodos possuem argumentos? Se não, quais possuem? Não, processo 2, processo 4 e processo 5.

c. Quais os métodos que não possuem retorno, mas possuem argumentos? Processo 5 d. Quais os métodos que não possuem retorno nem argumento? Processo 1;

e. Quais os métodos que possuem argumento, mas não dão retorno? Processo 5 8) Instancie as classes abaixo de acordo com o nome sugerido:

a. classe Pessoa – criar Pedro Pessoa Pedro = new Pessoa();

b. classe Lampada – criar Fluorescente Lampada Fluorescente = new Lampada(); c. classe Animal – criar Cachorro Animal cachorro = new Animal();

d. classe ContaBancaria – criar conta1 ContaBancaria conta1 = new ContaBancaria();

9) Crie uma classe com o nome de Prova, nesta classe defina dois (2) atributos com visibilidade privada, com o tipo fracionário e com os nomes de nota1 e nota2. Inicialize no construtor da classe a nota1 = 2.0 e a nota2=2.0 e exiba a seguinte mensagem “Avaliação do 1º mês” - Defina os métodos assessores (Getters e Setters) dos atributos nota1 e nota2. Nos “sets” permita apenas valores entre 0.0 e 10.0 - Defina também um método com o nome de calcularMedia(), este método deverá ser com retorno (fracionário) e sem passagem de parâmetro, dentro do método codifique de forma que o mesmo retorne o resultado da média aritmética dos atributos nota1 e

(10)

nota2. – Crie um método toString() neste método retorne as 2 notas e o resultado da média (execute dentro do toString() o método calcularMedia())

public class Prova {

private double n1, n2; //construtor public Prova(){ double n1 =2.0; double n2 =2.0; System.out.println("Avaliação do primeiro Mês"); } //metodos acessores

public void setArmazenarN1(double n1){ if((n1 <= 0) && (n1>=10)){ System.out.println(""); }else{ System.out.println("valor errado"); } }//fecha o metodo

public double getMostrarN1(){ return n1;

}

public double getMostrarN2(){ return n2;

}

public double calcularMedia(){ return (n1+n2)/2;

(11)

}

public String toString(){

return "Sua nota 1 é:" +getMostrarN1() +"sua nota n2:" +getMostrarN2()

+"e sua media é:" +calcularMedia();

return "error"; }

}

10) Crie também uma outra classe com o nome de UsaProva – esta classe irá conter o método main(), instancie o 2 objetos (objeto ler  classe Scanner e o objeto avaliacao  classe Prova) – Execute o método toString() dentro do sysout() , em seguida faça a leitura das notas (setters) e novamente execute o método toString().

Referências

Documentos relacionados

“responsabilidade pela solicitação de abertura de processo de flexibilização de jornada de trabalho ao Reitor, nos termos desta Resolução, de forma conjunta ou

Os acessos para pedestres e veículos são independentes e ocorrem através de portões metálicos posicionados junto à calçada da Rua João Avelino Pinho Mellão. O controle

• Para a realização de obras em planos horizontais ou verticais ou obras com uma inclinação em uma ou duas direções • Desempenho em obras com visível laser vermelho (NL400)

Algumas das pesquisas e projetos relacionados que estão sendo desenvolvidos pelo Grupo de Pesquisa WeTech: • Projeto de Interfaces Gráficas do Usuário IGU com interação baseada

Methods: Retrospective case series evaluating patients undergoing rotator cuff repair, analyzed by the UCLA score (pre and 12-month postoperative) and Magnetic Resonance

Na apresentação dos dados estatísticos, ficou demonstrada à todos os participantes a dimensão da pesquisa, abrangendo o setor produtivo como um todo, enfocando a produção

Esta força que o capital coloca sobre os governos é tanta, que mesmo sob forte pressão de movimentos sociais, como uma grande greve articulada pelas forças trabalhistas, o governo

Apenas foram submetidos aos protocolos de provocação e/ou dessensibilização com AAS, os pacientes com asma controlada e, portanto, os pacientes que tinham asma grave não