Programacao Orientada A Objetos
Programacao Orientada A Objetos
Programacao Orientada A Objetos
Programação
Orientada
Objetos
Introdução
Atributos e métodos
Capítulo 2:Encapsulamento
Conceito de encapsulamento
Getters e setters
Capítulo 3: Herança e
Polimorfiso
Capítulo 4: Construtores e
Destrutores
Construtores e destrutores são métodos
especiais das classes em programação
orientada a objetos. Neste capítulo, vamos
explorar os conceitos por trás desses métodos
e como eles são usados em Java e outras
linguagens de programação.
Construtores
Um construtor é um método especial usado para
criar e inicializar objetos de uma classe. O
construtor tem o mesmo nome da classe e não
retorna nenhum valor. Quando um objeto é
criado usando o operador "new", o construtor
é chamado automaticamente para inicializar o
objeto com seus valores iniciais.
Em Java, um construtor pode ser definido da
seguinte forma:
public class Exemplo {
public Exemplo() {
// código do construtor }
}
Utilização de construtores
O construtor é um método especial que é
chamado automaticamente quando um objeto é
criado a partir de uma classe. Ele é
responsável por inicializar os atributos da
classe e realizar outras operações
necessárias para o correto funcionamento do
objeto. Em Java, o construtor possui o mesmo
nome da classe e não possui tipo de retorno.
Existem dois tipos de construtores: o padrão
e o parametrizado. O construtor padrão é
aquele que não recebe nenhum parâmetro e é
criado automaticamente pelo compilador caso
nenhum construtor seja definido
explicitamente na classe. Já o construtor
parametrizado é aquele que recebe um ou mais
parâmetros e é utilizado para inicializar os
atributos da classe de acordo com os valores
passados como argumento.
Vejamos um exemplo de construtor
parametrizado em Java:
numeros[0] = 10;
numeros[1] = 20;
numeros[2] = 30;
numeros[3] = 40;
numeros[4] = 50;
System.out.println(numeros[0]);// 10
System.out.println(numeros[1]);// 20
Listas Uma lista é uma estrutura de dados que
armazena um conjunto de elementos. Diferente
de um array, uma lista não tem um tamanho
fixo e pode crescer ou diminuir
dinamicamente. Em Java, a implementação
padrão de lista é a ArrayList. A sintaxe para
declaração de uma ArrayList é a seguinte:
System.out.println(numeros.get(0)); // 10
System.out.println(numeros.get(1)); // 20
try {
// código que pode lançar exceções
} catch (TipoDeExcecao e) {
// tratamento da exceção
}
} catch (FileNotFoundException e) {
System.out.println("Arquivo não encontrado");
} catch (IOException e) {
System.out.println("Erro ao ler arquivo");
}
}
try {
arquivo = new FileReader("arquivo.txt");
// código para ler o arquivo
} catch (FileNotFoundException e) {
System.out.println("Arquivo não encontrado");
} finally {
if (arquivo != null) {
try {
arquivo.close();
} catch (IOException e) {
System.out.println("Erro ao fechar arquivo");
}
}
}
}
Singleton
private DatabaseConnection() {
// construtor privado para impedir a criação de
instâncias fora da classe
}
contAdapter
Facade
O Facade é um padrão estrutural que fornece uma interface
simplificada para um subsistema complexo. Um exemplo
prático do uso deste padrão é em um sistema de reservas de
viagens que precisa interagir com diferentes sistemas
externos para buscar preços, disponibilidade e fazer reservas.
Uma fachada é criada para simplificar a interação com esses
sistemas externos.
public FlightBookingSystem() {
searchSystem = new FlightSearchSystem();
reservationSystem = new FlightReservationSystem();
priceSystem = new FlightPriceSystem();
}
Clean Code
Refatoração de código