Qual é a diferença entre classe e estrutura

Índice:

Anonim

o principal diferença entre classe e estrutura é que o Classe é um tipo de dados do tipo de referência, enquanto a Estrutura é um tipo de dados do tipo valor.

Na programação, uma variável é uma área de armazenamento para armazenar dados. Cada variável possui um tipo de dados específico que pode armazenar. Principalmente, existem dois tipos de dados como tipo de valor e tipo de referência. No tipo de valor, um valor é atribuído diretamente. Além disso, int, float e double são alguns exemplos de tipos de dados de tipo de valor. Por outro lado, os tipos de dados do tipo de referência não armazenam os dados reais. Em vez disso, ele armazena uma referência à variável. Classe e estrutura são dois conceitos de programação. Conforme mencionado acima, Class é um tipo de dados de tipo de referência, enquanto Estrutura é um tipo de dados de tipo de valor.

Classe, Estrutura

O que é classe

Tudo é um objeto na Programação Orientada a Objetos (OOP). Os objetos são criados usando uma classe. Uma classe é um projeto para criar um objeto. Além disso, uma classe consiste em atributos e métodos. Os atributos também são chamados de propriedades e definem as características de um objeto. Os métodos definem o comportamento do objeto. Além disso, a criação de um objeto usando uma classe é chamada de instanciação.

Figura 1: Diagrama UML de uma classe

Os membros de uma classe são os atributos e métodos de uma classe. Principalmente, eles são três especificadores de acesso para oferecer suporte à ocultação de dados em OOP: público, privado e protegido. Em primeiro lugar, os membros públicos são visíveis para todas as classes. Em segundo lugar, os membros privados são visíveis apenas dentro da mesma classe. Em terceiro lugar, os membros protegidos são visíveis dentro do pacote e pelas subclasses.

Além disso, uma classe também contém uma função especial chamada construtor. Ajuda a criar um novo objeto. Além disso, possui o mesmo nome da classe e não possui tipo de retorno. Pode ser um construtor padrão ou um construtor parametrizado.

Um exemplo de classe é o seguinte.

Funcionário da classe {

public int id;

nome da string pública;

}

O programa principal é o seguinte.

Funcionário e = novo Funcionário ();

e.id = 101;

e.name = “Ana”;

De acordo com o programa acima, a classe possui duas propriedades: id e nome. Eles são públicos e acessíveis a qualquer outra classe. No programa principal, o construtor cria um objeto do tipo Employee. Em seguida, os valores são dados para id e nome.

O que é estrutura

A estrutura é uma única variável que contém vários tipos de dados. Em outras palavras, é uma coleção de variáveis ​​de tipos de dados diferentes, todas referenciadas por um nome. A declaração da estrutura forma um modelo que ajuda a criar uma instância da estrutura. Um exemplo é o seguinte.

struct Employee {

public int id;

nome da string pública;

};

O programa principal é o seguinte.

Funcionário e;

e.id = 101;

e.name = “Ana”;

De acordo com o programa acima, a estrutura contém duas propriedades: id e nome. No programa principal, a declaração ‘Employee e’ declara ‘e’ como um tipo de estrutura Employee. Em seguida, os valores são dados para id e nome.

Diferença entre classe e estrutura

Definição

Uma classe é um projeto que define as variáveis ​​e os métodos comuns a todos os objetos de um determinado tipo. É um tipo de dado do tipo de referência. Por outro lado, uma estrutura é um tipo de dados de tipo de valor que pode conter dados relacionados de vários tipos de dados. Portanto, a principal diferença entre Classe e Estrutura está no tipo de dados.

Herança

Uma classe pode herdar de outras classes ou estruturas, enquanto uma estrutura não pode herdar outras classes ou estruturas.

Destruidor

Além disso, o destruidor é outra diferença entre Classe e Estrutura. A classe pode ter um destruidor, mas a estrutura não tem um destruidor.

Instanciação

Além disso, outra diferença entre Class e Structure é que uma classe instancia um objeto usando uma nova palavra-chave, enquanto uma estrutura instancia um objeto sem usar uma nova palavra-chave.

Instância

Palavra-chave

Além disso, a palavra-chave “classe” define uma classe. A palavra-chave “struct” define uma estrutura.

Especificador de acesso padrão

Além disso, em uma classe, se não houver especificadores de acesso declarados, os membros serão privados. Em uma estrutura, se não houver especificadores de acesso declarados, os membros serão públicos.

Conclusão

Na programação, é necessário armazenar dados. Uma variável é um local usado para armazenar dados. Existem dois tipos de variáveis ​​como tipo de valor e tipo de referência. A diferença básica entre Classe e Estrutura é que uma Classe é um tipo de dados do tipo de referência, enquanto uma Estrutura é um tipo de dados do tipo valor.

Referência:

1. “Aulas C #.” Www.tutorialspoint.com, disponível aqui.2. “Estruturas C #.” Www.tutorialspoint.com, disponível aqui.

Cortesia de imagem:

1. “Oop-uml-class-example” Por O uploader original foi Esap na Wikipedia em inglês. - Transferido de en.wikipedia para Commons (CC BY-SA 3.0) via Commons Wikimedia

Qual é a diferença entre classe e estrutura