Classes e objetos em Java são os componentes fundamentais dos OOPs. Freqüentemente, há uma confusão entre classes e objetos. Neste tutorial, tentamos dizer a você a diferença entre Class e Object em Java.
Primeiro, vamos entender o que são,
- O que é classe em Java?
- O que é um objeto em Java?
- Qual é a diferença entre objeto e classe em Java?
- Conceito de classes e objetos
- Classes e objetos em programas de exemplo em Java
- Objeto Java e exemplo de classe: classe externa principal
O que é classe em Java?
Classe são um projeto ou um conjunto de instruções para construir um tipo específico de objeto. É um conceito básico de Programação Orientada a Objetos que gira em torno de entidades da vida real. A classe em Java determina como um objeto se comportará e o que o objeto conterá.Sintaxe
class{field;method;}
O que é objeto em Java?
O objeto é uma instância de uma classe. Um objeto em OOPS nada mais é que um componente independente que consiste em métodos e propriedades para tornar um tipo específico de dados útil. Por exemplo, nome da cor, mesa, bolsa, latindo. Ao enviar uma mensagem a um objeto, você está solicitando que o objeto invoque ou execute um de seus métodos, conforme definido na classe.
Do ponto de vista da programação, um objeto em OOPS pode incluir uma estrutura de dados, uma variável ou uma função. Ele tem um local de memória alocado. Objetos Java são projetados como hierarquias de classes.
Sintaxe
ClassName ReferenceVariable = new ClassName();
Qual é a diferença entre objeto e classe em Java?
Uma classe em programação orientada a objetos é um projeto ou protótipo que define as variáveis e os métodos (funções) comuns a todos os objetos Java de um determinado tipo.
Um objeto em OOPS é um espécime de uma classe. Objetos de software são freqüentemente usados para modelar objetos do mundo real que você encontra na vida cotidiana.
Clique aqui se o vídeo não estiver acessível
Entenda o conceito de classes e objetos Java com um exemplo.
Vamos dar um exemplo de desenvolvimento de um sistema de gerenciamento de animais de estimação, especialmente desenvolvido para cães. Você precisará de várias informações sobre os cães, como diferentes raças, a idade, o tamanho, etc.
Você precisa modelar seres da vida real, ou seja, cães em entidades de software.
Além disso, a pergunta de um milhão de dólares é: como você projeta esse software?
Aqui está a solução
Primeiro, vamos fazer um exercício.
Você pode ver a foto de três raças diferentes de cães abaixo.
Pare aqui agora! Liste as diferenças entre eles.
Algumas das diferenças que você pode ter listado podem ser raça, idade, tamanho, cor, etc. Se você pensar por um minuto, essas diferenças também são algumas características comuns compartilhadas por esses cães. Essas características (raça, idade, tamanho, cor) podem formar membros de dados para seu objeto.
Em seguida, liste os comportamentos comuns desses cães, como dormir, sentar, comer, etc. Portanto, essas serão as ações de nossos objetos de software.
Até agora, definimos as seguintes coisas,
- Classe - cães
- Membros de dados ou objetos - tamanho, idade, cor, raça, etc.
- Métodos - comer, dormir, sentar e correr.
Agora, para diferentes valores de membros de dados (tamanho da raça, idade e cor) na classe Java, você obterá diferentes objetos de cachorro.
Você pode projetar qualquer programa usando essa abordagem OOPs.
Ao criar uma classe, deve-se seguir os seguintes princípios.
- Princípio de responsabilidade única (SRP) - Uma classe deve ter apenas um motivo para mudar
- Responsabilidade Aberto e Fechado (OCP) - Deve ser capaz de estender qualquer classe sem modificá-la
- Responsabilidade de Substituição de Liskov (LSR) - As classes derivadas devem ser substituíveis por suas classes base
- Princípio de Inversão de Dependência (DIP) - Depende de abstração e não de concreções
- Princípio de Segregação de Interface (ISP) - Prepare interfaces refinadas que são específicas do cliente.
Classes e objetos em programas de exemplo em Java
// Class Declarationpublic class Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public String getInfo() {return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);}public static void main(String[] args) {Dog maltese = new Dog();maltese.breed="Maltese";maltese.size="Small";maltese.age=2;maltese.color="white";System.out.println(maltese.getInfo());}}Resultado:
Breed is: Maltese Size is:Small Age is:2 color is: white
Objeto Java e exemplo de classe: classe externa principal
No programa anterior, estamos criando o método main () dentro da classe. Agora, criamos classes e definimos o método main () em outra classe. Esta é uma maneira melhor do que a anterior.
// Class Declarationclass Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public String getInfo() {return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);}}public class Execute{public static void main(String[] args) {Dog maltese = new Dog();maltese.breed="Maltese";maltese.size="Small";maltese.age=2;maltese.color="white";System.out.println(maltese.getInfo());}}
Resultado:
Breed is: Maltese Size is:Small Age is:2 color is: white
Resumo:
- Classe Java é uma entidade que determina como os objetos Java se comportarão e quais objetos conterão
- Um objeto Java é um componente independente que consiste em métodos e propriedades para tornar úteis certos tipos de dados
- Um sistema de classes permite que o programa defina uma nova classe (classe derivada) em termos de uma classe existente (superclasse) usando uma técnica como herança, substituição e aumento.