O que é uma aula em Java?

Antes que você possa continuar avançando em seu estudo Java, você precisa aprender sobre a classe. A classe é a essência do Java. É a base na qual toda a linguagem Java é construída porque a classe define a natureza de um objeto. Como tal, a classe forma a base para programação orientada a objetos em Java.

dentro de uma classe Os dados e o código que atuam nesses dados são definidos. O código está contido em métodos. Como as aulas, objetos e métodos são fundamentais para Java, os detalhamos aqui. Ter uma compreensão básica desses recursos permitirá que você escreva programas mais sofisticados e compreenda melhor determinados elementos-chave do Java que são descritos abaixo.

tabela de conteúdo

1. O que é uma classe

Como toda a atividade do programa Java ocorre dentro de uma classe, temos usado classes desde o início deste curso. Claro, houve apenas classes extremamente simples, e não aproveitamos a maior parte de suas características. Como você vê, as classes são substancialmente mais poderosas do que as limitadas apresentadas até agora.

O que é uma aula? Uma classe é um modelo que define a forma de um objeto. Especifique os dados e o código que operam nesses dados. O Java usa uma especificação de classe para construir objetos. Objetos são instâncias de uma classe. Portanto, uma classe é essencialmente um conjunto de planos que especificam como construir um objeto.

É importante ser claro que uma classe é uma abstração lógica .

× Nota: Não é até que um objeto dessa classe tenha sido criado, que existe uma representação física dessa classe na memória.
× Lembre-se: os métodos e variáveis que constituem uma classe são chamados de membros da classe. Os membros de dados também são conhecidos como variáveis de instância.

2. A forma geral de uma classe

quando você define uma classe, declara sua forma e natureza exatas. Para fazer isso, especifique as variáveis da instância contida e os métodos operando neles. Embora as classes muito simples possam conter apenas métodos ou apenas variáveis de instância, a maioria das classes do mundo real contém ambos.

Uma classe é criada ao usar a palavra-chave. Aqui está uma forma geral simplificada de uma definição de classe:

class NombreClase{ //Declarar variables de instancia tipo var1; tipo var2; //.. //Declarar métodos tipo metodo1(parámetros){ //Cuerpo del método } tipo metodo2(parámetros){ //Cuerpo del método }}

Embora não haja regra sintática que deve ser cumprida, uma classe bem projetada deve definir um e apenas uma entidade lógica. Por exemplo, uma classe que armazena nomes e números de telefone normalmente não armazenam informações sobre o mercado de ações, a média de precipitação ou outras informações não relacionadas. O ponto aqui é que um grupo de classe bem projetado logicamente conectado informações. Coloque informações não relacionadas à mesma classe irá estruturar rapidamente seu código!

Até este ponto, as classes que temos usado têm apenas um método :. Logo você verá como criar outros. No entanto, observe que a forma geral de uma classe não especifica um método. Um método é necessário apenas se essa classe é o ponto de partida para o seu programa. Além disso, alguns tipos de aplicativos Java não exigem uma.

3. Definição de uma classe

para ilustrar classes, desenvolveremos uma classe que encapsula informações sobre veículos, como automóveis, vans e caminhões. Esta classe é chamada de veículo, e armazenará três elementos de informações sobre um veículo: o número de passageiros que você pode carregar, sua capacidade de combustível e a quantidade média de combustível consumida (em milhas por galão).

Então, três variáveis de instância são definidas: passageiros, capacidade e MPG. Observe que o veículo não contém nenhum método. Portanto, é atualmente um tipo de dados apenas.

class Vehiculo{ int pasajeros; //número de pasajeros int capacidad; //capacidad en galones int mpg; //consumo de combustible en millas por galón}

Uma definição de classe cria um novo tipo de dados. Nesse caso, o novo tipo de dados é chamado de veículo. Você usará esse nome para declarar objetos do tipo de veículo. Lembre-se de que uma declaração de classe é apenas uma descrição do tipo; Não crie um objeto real. Assim, o código anterior não faz qualquer objeto de veículo existente.

4. Como um objeto é criado?

Para realmente criar um objeto de veículo, use uma instrução como o seguinte:

Vehiculo minivan = new Vehiculo(); //Creando un objeto vehículo llamado minivan

Após a execução, minivan se refere a uma instância do veículo. Portanto, terá a realidade “física”. No momento, não se preocupe com os detalhes desta declaração.

Toda vez que uma instância de uma classe é criada, um objeto que contém sua própria cópia de cada variável de instância definido pela classe é criado.

Assim, cada objeto do veículo conterá suas próprias cópias das variáveis de instância passageiros, capacidade e MPG. Para acessar essas variáveis, o operador de pontos (.) Será usado. O operador do ponto liga o nome de um objeto com o nome de um membro. A forma geral do operador de pontos é mostrada aqui:

Objeto.Miembro

Portanto, o objeto é especificado à esquerda, e o membro é colocado à direita. Por exemplo, para atribuir a variável de capacidade a minivate ao valor 16, use a seguinte instrução:

minivan.capacidad = 16

em geral, você pode usar o operador de ponto para acessar o Variáveis e métodos de instância. Aqui está um programa completo que usa a classe

/* Un programa que usa la clase Vehiculo El archivo se llama DemoVehiculo.java */class Vehiculo { int pasajeros; //números de pasajeros int capacidad; //capacidad del combustible en galones int mpg; //combustible consumido en millas por galon}//Esta clase declara un objeto de tipo Vehiculoclass DemoVehiculo { public static void main(String args) { Vehiculo minivan = new Vehiculo(); int rango; //asignando valores a los campos de minivan minivan.pasajeros = 9; minivan.capacidad = 15; minivan.mpg = 20; //Calcular el rango asumiendo un tanque lleno rango = minivan.capacidad * minivan.mpg; System.out.println("La Minivan puede llevar " + minivan.pasajeros + " pasajeros con un rango de " + rango + " millas"); }}

La Minivan puede llevar 9 pasajeros con un rango de 300 millas

deve Ligue para o arquivo que contém este programa VehictoDemo.java porque o método principal () está no veículo nomeado da turma, não na classe chamada veículo.

Quando você compila este programa, você descobrirá que dois arquivos têm foi criado. Classe, um para veículo e outro para veículo. O compilador Java coloca automaticamente cada classe em seu próprio arquivo. Não é necessário que tanto o veículo quanto a classe do veículo estão no mesmo arquivo de origem. Poderia colocar cada aula em seu próprio arquivo, chamado vehicictodeemo.java e vehictododemo.java, respectivamente.

5. Criação de vários objetos

antes de continuar, vamos avaliar um princípio fundamental: cada Objeto tem suas próprias cópias das variáveis de instância definidas por sua classe. Assim, o conteúdo das variáveis em um objeto pode diferir do conteúdo das variáveis em outro.

Leitura recomendada
Introdução aos objetos

Não há conexão entre os dois objetos, exceto o fato de que ambos são objetos do mesmo tipo. Por exemplo, se você tiver dois objetos de veículos, cada um tem sua própria cópia de passageiros, capacidade e MPG, e o conteúdo deles pode diferir entre os dois objetos.

O próximo programa demonstra esse fato. (Observe que a classe é chamada agora dosagem.)

//Este programa crea dos objetos Vehiculoclass Vehiculo { int pasajeros; //números de pasajeros int capacidad; //capacidad del combustible en galones int mpg; //combustible consumido en millas por galon}//Esta clase declara un objeto de tipo Vehiculoclass DosVehiculo { public static void main(String args) { Vehiculo minivan = new Vehiculo(); Vehiculo sportscar = new Vehiculo(); int rango1, rango2; //asignando valores a los campos de minivan minivan.pasajeros = 9; minivan.capacidad = 15; minivan.mpg = 20; //asignando valores a los campos de sportscar sportscar.pasajeros = 10; sportscar.capacidad = 25; sportscar.mpg = 30; //Calcular el rango asumiendo un tanque lleno rango1 = minivan.capacidad * minivan.mpg; rango2 = sportscar.capacidad * sportscar.mpg; System.out.println("La Minivan puede llevar " + minivan.pasajeros + " pasajeros con un rango de " + rango1 + " millas"); System.out.println("El Sportscar puede llevar " + sportscar.pasajeros + " pasajeros con un rango de " + rango2 + " millas"); }}

6. Variáveis de referência e atribuição

em uma operação de alocação, as variáveis de referência de objeto atuam diferentemente das variáveis de um tipo primitivo, como int.

  • quando um tipo primitivo A variável é atribuída a outra, a situação é simples. A variável à esquerda recebe uma cópia do valor da variável à direita.
  • Atribuindo uma variável de referência de objeto para outra, a situação é um pouco mais complicada porque está mudando o objeto para o qual ele está referindo a variável de referência. O efeito dessa diferença pode causar alguns resultados contra intuitivos.

Por exemplo, note o seguinte fragmento:

Vehiculo auto1 = new Vehiculo();Vehiculo auto2 = auto1;

em Primeiro olhar, é fácil pensar que Auto1 e Auto2 referem-se a diferentes objetos, mas este não é o caso. Em vez disso, o Auto1 e o Auto2 se referirão ao mesmo objeto. A atribuição Auto1 Auto2 simplesmente faz o Auto2 refere-se ao mesmo objeto que o Auto1. Assim, o objeto pode ser agido por qualquer um dos Auto1 ou Auto2. Por exemplo, após a alocação

auto1.mpg = 28;

Se você funcionar, ambas as instruções com println ():

System.out.println(auto1.mpg);System.out.println(auto2.mpg);

Adivinha o que? O mesmo valor é exibido: 28.

Embora Auto1 e Auto2 se referem ao mesmo objeto, não estão vinculados de outra forma. Por exemplo, uma tarefa pós-Auto2 simplesmente altera o objeto para o qual o Auto2 se refere. Por exemplo:

Vehiculo auto1 = new Vehiculo();Vehiculo auto2 = auto1;Vehiculo auto3 = new Vehiculo();
auto2 = auto3; //Ahora auto2 y auto3 se refieren al mismo objeto

Quando esta sequência é executada, o Auto2 refere-se ao mesmo objeto que o Auto3. / p>

Se você permaneceu uma dúvida, por favor comente. Vejo você em breve!

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *