Vídeo mostrando o funcionamento do projeto Cinema
O sistema escolhido é o funcionamento de um cinema. O cinema possui várias salas e é necessário registrar informações sobre elas, como sua capacidade e número da sala. Desse modo, é criado várias sessões contendo os filmes com títulos, horários, datas e alguns com combos especiais. Nas sessões têm um certo número de ingressos que são vendidos conforme a capacidade da sala, as sessões podem ser normais,3D e IMAX. A função do nosso sistema é controlar e administrar um cinema, podendo ver quais são as sessões que ainda estão disponíveis, sendo que a cada ingresso vendido apareça quantos ainda estão disponíveis, quais os horários e datas de cada filme com os seus devidos títulos. O usuário também poderá escolher qual sessão ele quer, se a sessão é 3D, normal ou IMAX. E também, fornecerá o número da sala e quantidade de ingressos, assim será impresso o seus ingressos.
O principal objetivo é mostrar a parte de gerenciamento de sessões, junto com a lanchonete do cinema. Dessa forma, pode-se adicionar sessões, selecionar uma delas para comprar ingressos, e remover uma caso seja necessário,além disso, tem opção de descrição da sala IMAX. E na lanchonete será feito o pedido do cliente. De modo geral, o sistema especifica a funcionalidade do funcionário no momento que ele também for atender um cliente. Portanto, estas são as funcionalidades do sistema:
- Adicionar sessão: Escolhe o tipo da sessão e coloca os dados dela, em seguida a sessão é adicionada no Array List.
- Selecionar sessão e Comprar ingresso: Fornece o número da Sala e a quantidade de ingressos, assim é imprimido os ingressos da sala escolhida.
- Remover sessão: Caso os ingressos de uma sessão acabem ou passe do horário do filme, ela deve ser removida do Array List.
- IMAX: Esta opção apenas traz uma descrição das salas que têm sessão IMAX.
- Total vendido e clientes: Mostra o total lucrado em cada tipo de sessão e a quantidade de clientes.
- Cine food: O cliente pode fazer um pedido no cardápio da lanchonete.
- Java
- Classe, objetos, métodos assessores, toString
- Encapsulamento
- Uso de construtores
- Objetos e métodos estáticos
- Composição
- Herança
- Coleções
- Classes e métodos abstratos / Interface
- Polimorfismo
- Downcasting e Upcasting