-
Notifications
You must be signed in to change notification settings - Fork 4
Passo 4: Classes
No paradigma da programação orientada a objetos (POO), classes são a estrutura fundamental para organização e reutilização de código. Em Java, uma classe é um modelo (ou blueprint) para a criação de objetos, definindo atributos (dados) e métodos (comportamentos).
Neste artigo, exploraremos o conceito de classes usando como exemplo um sistema de gestão de loja.
Uma classe em Java é definida pela palavra-chave class, seguida do nome da classe e de suas variáveis e métodos. A estrutura básica é a seguinte:
public class NomeDaClasse {
// Atributos (variáveis)
// Métodos (comportamentos)
}Vamos criar um sistema simples para gerenciar produtos em uma loja. Ele terá classes para representar os produtos e a lógica de cadastro e exibição.
A classe Produto armazena informações sobre cada item da loja, como código, nome, preço, cor, tamanho e tipo.
public class Produto {
private int codigo;
private String nome;
private double preco;
private String cor;
private String tamanho;
private String tipo;
// Construtor
public Produto(int codigo, String nome, double preco, String cor, String tamanho, String tipo) {
this.codigo = codigo;
this.nome = nome;
this.preco = preco;
this.cor = cor;
this.tamanho = tamanho;
this.tipo = tipo;
}
// Método para exibir informações do produto
public void exibirProduto() {
System.out.println("Código: " + codigo);
System.out.println("Nome: " + nome);
System.out.println("Preço: R$" + preco);
System.out.println("Cor: " + cor);
System.out.println("Tamanho: " + tamanho);
System.out.println("Tipo: " + tipo);
}
}A classe Loja gerencia os produtos cadastrados.
import java.util.ArrayList;
import java.util.List;
public class Loja {
private List<Produto> produtos;
public Loja() {
this.produtos = new ArrayList<>();
}
// Método para adicionar produto
public void adicionarProduto(Produto produto) {
produtos.add(produto);
System.out.println("Produto adicionado com sucesso!");
}
// Método para listar produtos
public void listarProdutos() {
if (produtos.isEmpty()) {
System.out.println("Nenhum produto cadastrado.");
return;
}
System.out.println("Lista de Produtos:");
for (Produto p : produtos) {
p.exibirProduto();
System.out.println("--------------------");
}
}
}Esta classe contém o método main para execução do sistema.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Loja loja = new Loja();
Scanner scanner = new Scanner(System.in);
boolean rodando = true;
while (rodando) {
System.out.println("Menu:");
System.out.println("1. Adicionar Produto");
System.out.println("2. Listar Produtos");
System.out.println("3. Sair");
System.out.print("Escolha uma opção: ");
int opcao = scanner.nextInt();
scanner.nextLine();
switch (opcao) {
case 1:
System.out.print("Código do Produto: ");
int codigo = scanner.nextInt();
scanner.nextLine();
System.out.print("Nome do Produto: ");
String nome = scanner.nextLine();
System.out.print("Preço do Produto: ");
double preco = scanner.nextDouble();
scanner.nextLine();
System.out.print("Cor do Produto: ");
String cor = scanner.nextLine();
System.out.print("Tamanho do Produto: ");
String tamanho = scanner.nextLine();
System.out.print("Tipo do Produto: ");
String tipo = scanner.nextLine();
Produto novoProduto = new Produto(codigo, nome, preco, cor, tamanho, tipo);
loja.adicionarProduto(novoProduto);
break;
case 2:
loja.listarProdutos();
break;
case 3:
rodando = false;
System.out.println("Encerrando o programa...");
break;
default:
System.out.println("Opção inválida, tente novamente.");
}
}
scanner.close();
}
}- Unicamp - Classes: https://www.dca.fee.unicamp.br/cursos/PooJava/classes/conceito.html
- UFSCAR - Classes: https://www.dm.ufscar.br/~waldeck/curso/java/part27.html
- DIO - Classes:https://www.dio.me/articles/descomplicando-de-vez-o-que-sao-classes