Baixe o app para aproveitar ainda mais
Prévia do material em texto
Curso de Java by Antonio Rodrigues Carvalho Neto Variáveis de instância Variáveis de instância � Vamos utilizar a classe carro como exemplo para demostrar o funcionamento das variáveis de instância. Carro liga() acelera() frea() float potencia String marca String modelo int ano public class Carro { float potencia; String marca; String modelo; int ano; public void liga () { System.out.println(“Carro ligado”); } public void acelera () { System.out.println(“Acelerando”); } public void frea() { System.out.println(“Freando”); } } Memória da JVM Variáveis de instância (cont...) Variáveis locais do método main herbie � Quando declaramos uma variável como sendo do tipo Carro, a JVM apenas cria um ponteiro do tipo Carro apontando para null. ex.) Carro herbie; null Variáveis de instância (cont...) Memória da JVMVariáveis locais do método main herbie � O espaço para a instância é criado apenas quando o construtor é invocado. ex.) herbie = new Carro(); O trecho new Carro() efetivamente cria o espaço para o objeto na memória ano modelomarcapotencia O trecho herbie = apenas vincula a variável herbie ao espaço do objeto na memória Variáveis de instância (cont...) Memória da JVMVariáveis locais do método main herbie � Quando declaramos outra variável e “igualamos” a váriável já criada, a JVM faz com que esta variável aponte para o mesmo endereço de memória que ja está criado ex.) Carro meufusca = herbie; ano modelomarcapotencia meufusca Métodos Métodos � Os métodos representam o comportamento de uma classe, eles são as ações que a classe pode fazer. � Todo o método deve retornar uma informação. � Quando um método é invocado a JVM interrompe a execução do bloco de código que invocou o método, e começa então a executar o bloco de código do método invocado. � Ao final da execução do bloco de código do método, a JVM retoma a execução do bloco que havia sido parado apartir do lugar onde parou. Métodos (continuação) // Declaração da classe public class Helloworld { // Declaração de método public static void main( String args[]) { System.out.println( “Ola ... “); } } Modificador Tipo de retorno do método Nome do método Argumentos/Parâmetros do método Métodos (parâmetros) � Os métodos podem receber parâmetros*, para isso é preciso declarar os tipos e nomes dos parâmetros dentro do parêntesis. Caso haja necessidade de receber mais de um parâmetro, você pode colocar uma vírgula e especificar o outro parâmetro, sempre colocando o tipo e o nome. ... // Declaração de método public int quadrado( int valor ) { return(valor * valor); } ... public int area( int base, int altura) { return (base * altura); } Argumentos/Parâmetros do método * Parâmetros são informações necessárias para o método completar suas atividades. Métodos (parâmetros – cont...) � Quando o método for chamado, os parâmetros devem ser especificados na mesma sequência em que foram declarados. � As informações passadas como parâmetro ficarão acessíveis pelos nomes em que foram declarados e estarão disponíveis como variáveis locais. public class Matematica { public int quadrado( int valor ) { return ( valor * valor ); } public int area (int base, int altura) { return ( base * altura ); } void imprimeTexto( String texto ) { System.out.println(texto); } } public class Teste { public static void main (String args[]) { Matematica m = new Matematica(); int q = m.quadrado( 10 ); System.out.println( “Quadrado de 10 é : “ + q ); int a = m.area( 20, 50 ); System.out.println( “A area do terreno é : “ + a ); m.imprimeTexto(“ A área de um terreno 20X50 é “ + a); } } Métodos (Assinatura) � Assinatura do método é um conjunto de informações que distingue-o de outro método na mesma classe. Este conjunto de informações é composto por (tipo de retorno, nome e parâmetros). public void imprimeTexto( String texto ) { System.out.println( texto ); } � Exemplo de Métodos ... int quadrado( int valor ) { return ( valor * valor ); } void imprimeTexto( String texto ) { System.out.println(“Vendido”); } ... Assinatura do Método Métodos estáticos � Os métodos também podem ser acessados de forma estática (sem a necessidade de criar uma instância da classe). � Para permitir que o método seja acessado de forma estática é preciso colocar o modificador static na sua assinatura. Métodos estáticos (cont...) � Quando o método for declarado como estático ele não poderá acessar atributos de instância do objeto. public class Matematica { public static int quadrado( int valor ) { return ( valor * valor ); } public static int area (int base, int altura) { return ( base * altura ); } void static imprimeTexto( String texto ) { System.out.println(“Vendido”); } } public class Teste { public static void main (String args[]) { int q = Matematica.quadrado( 10 ); System.out.println( “Quadrado de 10 é : “ + q ); int a = Matematica.area( 20, 50 ); System.out.println( “A area do terreno é : “ + a ); Matematica.imprimeTexto(“ A área de um terreno 20X50 é “ + a); } }
Compartilhar