Ficha 8 Java

download Ficha 8 Java

of 8

  • date post

    15-Dec-2015
  • Category

    Documents

  • view

    215
  • download

    0

Embed Size (px)

description

Ficha 8 java

Transcript of Ficha 8 Java

INSTITUTO DE TRANSPORTE E COMUNICAES

Ficha 8Fundamentos da linguagem JAVAMtodos

Um mtodo um conjunto ordenado de instrues as quais podem ser invocadas em diferentes momentos no programa. O uso de mtodos vantajoso uma vez que permitem que o mesmo trecho de cdigo seja reutilizado em diferentes momentos e circunstncias ao longo do programa; alm disso, o uso de mtodos torna o cdigo fonte mais legvel e fcil de manter.

Sintaxe

Mtodos sem parmetros de entrada e sem valor de retorno

OndemodificadorDeVisibilidade: pode representar uma destas palavras reservadas (modificadores de visibilidade): public, private ou protected

NotasO modificador de visibilidade pode ser omitido e nesses casos assume-se que o modificador public.

A palavra static deve ser somente no caso em que o mtodo for usado em contexto esttico. (Mais tarde veremos o que isso)

Mtodos com parmetros de entrada mas sem valor de retorno

Ondeparametros: uma definio de um conjunto de variveis as quais so chamadas parmetros de entrada.

A sintaxe desta definio a seguinte:

Mtodos com valor de retorno (com ou sem parmetros de entrada)

OndeTipoDeDadosDeRetorno: o tipo de dados do valorRetorno;

: representa o valor que o mtodo ir retornar ao chamador. O valor de retorno deve ser do tipo que o tipo definido pelo TipoDeDadosDeRetorno ou de tipos compatveis.

Exemplo 1:

Escreva um mtodo que l do teclado dois nmeros e imprime a mdia aritmtica desses nmeros (Nota: o mtodo deve ser publico e esttico, sem parmetros de entrada e sem retorno);

Resoluo:

Exemplo 2

Altere o programa do exemplo anterior de modo que os nmeros sejam recebidos pelo parmetro;

Resoluo:

Exemplo 3

Altere o exerccio do exemplo anterior de modo que a mdia calculada seja retornada;

Note que o tipo de dados do valor de retorno (media) coincide com o tipo de dados de retorno (double);

Chamamento/Invocao de mtodos

SituaoChamamento dentro da classe onde o mtodo foi definido

Mtodo sem retorno

Onde:

o conjunto de valores de entrada; este conjunto obedece a seguinte sintaxe:

Nota: valor1, valor2, , valorN so valores cujos tipos coincidem (ou so compatveis) com os tipos dos respectivos parmetros. Este conjunto pode ser vazio se o mtodo invocado no tiver parmetros; neste caso escreve-se () aps a especificao do nome do mtodo.

Mtodo com retorno

Onde:variavel a varivel que guarda o valor do retorno do mtodo. Nota: o tipo de dados da variavel deve ser o mesmo (ou compatvel) com o tipo de retorno do mtodo. O chamamento de mtodos com valor de retorno pode ainda ser feito em expresses, neste caso, o valor de retorno ser processado na expresso tal como seria tratado um outro valor qualquer.

Chamamento fora da classe de definio do mtodo (vlido apenas para mtodos estticos!)

Mtodo sem retorno

Onde:NomeDaClasse o nome da classe onde o mtodo foi definido.

Mtodo com retorno

Exemplo 4

Considere o mtodo void calculaMedia() definido no exemplo 1; escreva um programa que faa uso deste mtodo; considere que o mesmo foi definido na mesma classe onde ser feito o chamamento.Exemplos 5

Resolva o problema anterior mas desta vez para o mtodo double calculaMedia(double numero1, double numero2) definido no exemplo 3;

Exemplo 6

Resolva o problema do exemplo 5 considerando que o mtodo em causa foi definido em uma classe com nome Medias;

Exerccios

1. Recorrendo ao uso de mtodos, elabore um programa que recebe do utilizador um nmero inteiro e imprime o seu quadrado; (Nota: defina um mtodo com o nome calculaQuadrado com esta assinatura public static void calculaQuadrado());

2. Resolva o exerccio anterior considerando que o mtodo tem esta assinatura: public static void calculaQuadrado(int numero);

3. Resolva o exerccio anterior considerando que o mtodo tem esta assinatura: public static int calculaQuadrado(int numero);

4. Agora resolva os exerccios 1, 2 e 3 definindo os mtodos criados em uma classe chamada RaizQuadrada.

1