Parâmetro ou Argumento

Um conceito que pode ser um pouco confuso para quem está iniciando na Orientação a Objeto, é a  diferencia entre parâmetro e argumento.

O parâmento é utilizado quando está sendo criado um método e segue a seguinte ordem, tipo de variável e nome.

Exemplo 1 – utilização de parâmentos:


//um parâmento

public String MsgCaixaAlta(String msg){

return msg.toUpperCase();

}

//dois parâmentos

public int soma(int x, int y){

return x + y;

}

//três parâmentos

public void  somaComSubtracao (int a, int b, int c, ){

return (a + b) - c;

}

 

Argumento é utilizado para executar  métodos que esteja paramentizado, tem que ser do mesmo tipo que foi utilizado no parâmento para que ocorra a execução correta da aplicação.

Exemplo 2 – utilização de argumento:


//passando argumento

Math.abs(-8);
Math.round(5.22);

Então podemos chegar a conclusão que o argumento é o valor utilizado na chamada do método, que possui na sua assinatura parâmetro definindo o tipo de argumento aceito.

 

 

 

Anúncios

Diagrama de classe na IDE Eclipse

Olá pessoal, tudo bem?

Hoje irei mostrar como instalar uma ferramenta na IDE Eclipse, para visualizar o diagrama de classe do seu projeto.

Primeiro vamos até o site http://objectaid.com/

objectAid

Clique em “Download“.

objectAid-Download.png

Vamos utilizar o “Name” e “URL”, para realizar a instalação no Eclipse.

dowload objectAid.png

Inicialize  sua IDE Eclipse, selecione a guia Help > Install New Software.

instalar_plugin.png

Clique em “Add…” , insira o “Name” e “URL”  nos campos que aparece,  clique em  “OK”.

instalar_plugin_INSERIR_INFO.png

Selecione “ObjectAid Class Diagram”, e clique em “Next” , após clique em “Finish” para  finalizar a instalação da ferramenta.

finalizando_instalação

Vamos criar um projeto Java, para observar como a ferramenta funciona, dentro do projeto iremos criar três classe Java com relação de herança.

1 – Classe Animal

public abstract class Animal {
     public abstract void falar();
}

2 – Classe Gato

public class Gato extends Animal {
	@Override
	public void falar() {
	      System.out.println("Miau, miau, miau ...");
	}
}

3 – Classe Cachorro

public class Cachorro extends Animal{
	@Override
	public void falar() {
		System.out.println("Au, au, au ...");
	}
}

No projeto pressione as teclas Ctrl+N , e procure por “Object UML Diagram”, selecione “Class Diagram” e clique em “Next“, atribua um nome e clique em “Finish

objectAid_selecionado.png

No projeto selecione as classes e arraste para o arquivo criado, com isso o  seu diagrama de classe já será exibido.

objectAid_selecionado_criado.png

A ferramenta possui a opção de salvar o diagrama em imagem, clique com o botão direito do mouse e selecione “Save As Image..”

objectAid_salvando_diagrama_imagem.png

Valeu pessoal e boa codificação 🙂

Interfaces em Java

As interfaces em Java é uma forma de contrato, que a classe ao assinar, tem a responsabilidade de  implementar os seus métodos.
Exemplos:

public interface CarroTurbo {

    void ligarTurbo();
    void desligarTurbo();

}

Essa é a nossa interface, a classe que implementa-lá também será um “CarroTurbo” , já que obrigatoriamente deverá implementar seus métodos.

public class CarroPasseio implements CarroTurbo{
     int velocidade;
	String marca;

	@Override
	public void ligarTurbo() {
		//aumentar a velocidade
	}

	@Override
	public void desligarTurbo() {
		//diminuir a velocidade
	}
}

A classe “CarroPasseio” implementar “CarroTurbo”.

public class CarroDeCorrida implements CarroTurbo{
    int velocidade;
	String marca;

	@Override
	public void ligarTurbo() {
		//aumentar a velocidade
	}

	@Override
	public void desligarTurbo() {
		//diminuir a velocidade
	}
}

A classe “CarroDeCorrida” implementar “CarroTurbo”.

public class Corrida {

	public void poderCorrer(CarroTurbo carroTurbo){
		carroTurbo.ligarTurbo();
		carroTurbo.desligarTurbo();
	}
}

A classe “Corrida” possui o método “poderCorrer” que aceita um “CarroTurbo” , assim qualquer classe que implementar “CarroTurbo”, poderá ser utilizado no método, tendo a garantia que o “contrato foi efetuado”  e possui os métodos para “ligarTurbo” e “desligarTurbo”.

Diagrama de classe:

diagrama

Código fonte no GitHub: https://github.com/franciscojsc/interface_em_java

Instalando o Java no Windows 7

Olá pessoal, hoje vamos instalar o Java no Windows 7, para começamos a codificar nossas aplicações.

Acessando o site da Oracle para baixar o Java Development Kit (JDK):

Link para download : http://www.oracle.com/technetwork/java/javase/downloads/index.html

baixar-jdk.png
Página para download do JDK

Após ter baixado  e executado o JKD, vamos configurar as variáveis de ambiente, para que o Java fique disponível para ser executado pelos programas do Sistema Operacional.

Clique com o botão direito do mouse sobre computador e selecione “Propriedades”.

meu-computador.png

Clique em “Configurações avançadas do sistema”.

informacao-pc.png

Clique em “Variáveis de Ambiente“.

variavel-de-ambiente

Clique em “novo”, para adicionar uma nova “variável de ambiente” para o sistema.

variavel-de-ambiente-painel.png

Agora vamos adicionar um nome para a variável que será chamada  JAVA_HOME e o caminho onde está instalado o JDK.

editando-variavel

 

E para finalizar vamos adicionar a JAVA_HOME na “Variável de sistema” Path, acrescentando %JAVA_HOME%\bin e não podemos esquecer do ponto-e-vírgula ( ) para separar as variáveis.

adicionando-java-home.png

Para verificar se o Java foi instalador corretamente abra o “Prompt de Comando”  e digite “java –version”

console.png

Tudo perfeito, para começar a codificar em um ambiente Java.

Configurando a Comunicação, Arduino com Java

A comunicação entre uma aplicação java e o arduino, pode ser facilmente configurada, com uma biblioteca chamada RXTX, que pode ser baixada no site: http://jlog.org/rxtx.html .

Para  realizar a instalação  no windows, deve-se encontrar a pasta de instalação do java, e realizar os seguinte procedimentos.

  • Copie RXTXcomm.jar para pasta lib/ext 
  • Copie rxtxSerial.dll para pasta bin

Outro passo importante, é acessa o site do Arduino, onde há alguns exemplos de código para manipulação da biblioteca RXTX .

 

XML com Java

Olá pessoal, hoje irei explicar um pouco sobre como gerar um XML através de  uma classe java, com a biblioteca XStream.

Vamos criar um projeto chamado XML_Java, e dentro do projeto criar uma pasta com o nome lib, onde será armazenado os nosso jar.

Será necessário baixar o jar do XStream no site: http://x-stream.github.io/download.html

xstream

Após o download, salve o jar na pasta lib dentro do projeto criado anteriormente, e adicione o jar ao build path, com estes procedimento efetuado o projeto reconhece o XStream.

workspace_lib_add

Agora  vamos codificar um pouco, utilizaremos duas classes, uma  classe cliente que vamos usar seus atributos para criação do XML, e outra classe  para roda a aplicação.

public class Cliente {

private String nome;
private String sobrenome;
private int idade;
private int identificador;

public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getSobrenome() {
return sobrenome;
}
public void setSobrenome(String sobrenome) {
this.sobrenome = sobrenome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public int getIdentificador() {
return identificador;
}
public void setIdentificador(int identificador) {
this.identificador = identificador;
}

}

 

Classe responsável por inicializar a aplicação.


import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;

public class Main {

public static void main(String[] args) {

Cliente cliente = new Cliente();
cliente.setNome("Francisco");
cliente.setSobrenome("Chaves");
cliente.setIdade(24);
cliente.setIdentificador(1);

XStream stream = new XStream(new DomDriver());
stream.alias("cliente", Cliente.class); //remoneando o nome do pacote

//criando o xml
String xml = stream.toXML(cliente);

System.out.println(xml);
}

}

O resultado impresso no console:

<cliente>
  <nome>Francisco</nome>
  <sobrenome>Chaves</sobrenome>
  <idade>24</idade>
  <identificador>1</identificador>
</cliente>

Código fonte no GitHub: https://github.com/franciscojsc/xml_java

Fatorial em Java

Olá pessoal, irei mostrar algumas formas de realizar o fatorial em Java.

Exemplo 1 – fatorial interativo :
Vamos calcular o fatorial de 5:

//variável para armazenar o valor a ser calculado
int fatorial = 1;

//laço de repetição
for (int i = 2; i <= 5; i++) {
fatorial = fatorial * i;
}

Analisando o código acima:
Primeiro declaramo uma variável para armazenar o valor a ser calculado atribuindo o valor inicial um, para não haver erro no cálculo, pois qualquer número multiplicado por zero é igual a zero, após utilizamos um laço de repetição for, nos parâmetros do for a variável de controle é iniciada com o valor dois, na condição de parada verificamos se  a variável de controle é igual ou menor que cinco, assim quando a variável de controle estiver maior que cinco será encerrado o laço de repetição, logo após a condição de parada a ser avaliada é executado o código dentro do for, onde ocorre a multiplicação da variável que armazena o cálculo com a variável de controle, depois de executar o cálculo incrementada-se a variável de controle e novamente retorna a verificar a condição de parada do loop, até a condição está falsa e termina o laço de repetição.

Exemplo 2 – fatorial recursivo:
Vamos supor que queremos saber o fatorial de 5 de forma recursiva:

public int fatorialRecursivo(int fatRec){
//condição de parada
if(fatRec <= 1){
return 1 ;
}
//5!
//5 * 4! = 120
//4 * 3! = 24
//3 * 2! = 6
//2 * 1! = 2
// 1! = 1 = se o valor for igual a um, para a recursão e retorna calculando os valores

return (fatRec * fatorialRecursivo(fatRec - 1));
}

Analisando o código acima:
Para realizar o fatorial de forma recursiva teremos que criar um método para retornar o valor calculado. Então criaremos um método que retorne um inteiro e receba como parâmetro um valor para ser calculado, lembrando que qualquer método que não seja void retorna algum valor ou objeto, dentro do método especificamos a condição de parada, ou seja quando esta condição for verdadeira a recursão para, se a condição de parada for falsa retorna o mesmo método com outro parâmetro até encontrar a condição  de parada verdadeira, deve-se tomar cuidado para esta condição não se torne uma recursão infinita, pois se esta condição nunca for verdadeira o método irá consumir muita  mémoria da máquina e ocorrerá um erro StackOverflowError.

Código fonte no Github: https://github.com/franciscojsc/Fatorial-em-Java.git