Menu
Coddy logo textTech

Classes vs Objetos

Parte da seção Programação Orientada a Objetos do Journey de Dart da Coddy — lição 4 de 110.

Classes e objetos servem a propósitos diferentes. Uma classe é um modelo, enquanto um objeto é o que você constrói a partir desse modelo.

Aqui está um exemplo de uma classe com variáveis de instância:

class Dog {
  String name = '';
  String breed = '';
}

As variáveis declaradas dentro de uma classe (como name e breed) pertencem a cada objeto criado a partir dessa classe. Exploraremos as variáveis de instância em detalhes mais adiante.

Crie múltiplos objetos a partir da mesma classe:

Dog dog1 = Dog();
Dog dog2 = Dog();

Cada objeto pode ter seus próprios valores exclusivos para essas variáveis:

dog1.name = 'Nicky';
dog1.breed = 'Siberian Husky';

dog2.name = 'Teemon';
dog2.breed = 'Labrador';

Use o operador de ponto . para acessar as variáveis de um objeto:

print('${dog1.name} is a ${dog1.breed}');
print('${dog2.name} is a ${dog2.breed}');

Saída:

Nicky is a Siberian Husky
Teemon is a Labrador

Diferença Principal: A classe Dog define a estrutura que todos os cães compartilham, enquanto dog1 e dog2 são objetos individuais com seus próprios dados exclusivos.

challenge icon

Desafio

Fácil

Complete o código para criar dois objetos de estudante da classe Student e definir suas variáveis.

  • student.dart: Contém a classe Student (bloqueado)
  • driver.dart: Crie dois objetos e defina seus dados

Defina os seguintes valores:

  • student1: o nome é 'Alice' com a nota 'A'
  • student2: o nome é 'Bob' com a nota 'B'

Folha de consulta

Uma classe é um modelo que define a estrutura e o comportamento de objetos. Um objeto é uma instância criada a partir de uma classe.

Defina uma classe com variáveis de instância:

class Dog {
  String name = '';
  String breed = '';
}

Crie objetos a partir de uma classe:

Dog dog1 = Dog();
Dog dog2 = Dog();

Acesse e modifique variáveis de objeto usando o operador de ponto .:

dog1.name = 'Nicky';
dog1.breed = 'Siberian Husky';

dog2.name = 'Teemon';
dog2.breed = 'Labrador';

Acesse variáveis de objeto:

print('${dog1.name} is a ${dog1.breed}');
// Saída: Nicky is a Siberian Husky

Experimente você mesmo

import 'student.dart';

void main() {
  // TODO: Crie dois objetos Student


  // TODO: Defina name e grade para student1 (name: 'Alice', grade: 'A')


  // TODO: Defina name e grade para student2 (name: 'Bob', grade: 'B')


  print('${student1.name} has grade ${student1.grade}');
  print('${student2.name} has grade ${student2.grade}');
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Programação Orientada a Objetos