Bem-vindo ao projeto iPhone! Este repositório foi criado como um modelo de estudo para aprender e praticar conceitos de polimorfismo e interfaces em Java. Utilizamos uma simulação de um iPhone para demonstrar esses conceitos de forma prática e intuitiva.
O principal objetivo deste projeto é fornecer uma compreensão clara de como usar interfaces e polimorfismo no desenvolvimento de software orientado a objetos.
🔧 Funcionalidades Implementadas Este projeto simula um iPhone com as seguintes funcionalidades:
🎵 Reprodutor Musical: tocar, pausar, selecionar música.
📞 Aparelho Telefônico: ligar, atender, iniciar correio de voz, iniciar conversa, desligar.
🌐 Navegador na Internet: exibir página, adicionar nova aba, atualizar página.
📧 Email: enviar email, receber email, deletar email.
📸 Fotos: tirar foto, visualizar foto, deletar foto.
🎥 Reprodutor de Vídeo: reproduzir vídeo, pausar vídeo, selecionar vídeo.
IntelliJ IDEA
Java JDK (versão 11 ou superior)
Clone o repositório: bash Copiar código git clone https://github.com/seu-usuario/projeto-iphone.git
Abra o projeto no IntelliJ IDEA: Vá em File > Open... e selecione a pasta do projeto.
Compile e execute o projeto: No IntelliJ, clique com o botão direito no arquivo iPhone.java e selecione Run 'iPhone.main()'.
Exemplo de Uso java,
public class projectIphone {
public static void main(String[] args) {
Iphone phone = new Iphone();
AparelhoTelefonico aparelhoTelefonico = phone;
ReprodutorMusical reprodutorMusical = phone;
NavegadorInternet navegadorInternet = phone;
aparelhoTelefonico.ligar();
reprodutorMusical.tocarMusica();
navegadorInternet.abrirNavegador();
}
}
src/: Contém todos os arquivos fonte do projeto.
iPhone.java: Classe principal que implementa todas as interfaces.
AparelhoTelefonico.java: Interface que define os métodos de um aparelho telefônico.
ReprodutorMusical.java: Interface que define os métodos de um reprodutor musical.
NavegadorInternet.java: Interface que define os métodos de um navegador de internet.
Email.java: Interface que define os métodos de um cliente de email.
Fotos.java: Interface que define os métodos de um gerenciador de fotos.
ReprodutorVideo.java: Interface que define os métodos de um reprodutor de vídeo.
Java: Linguagem de programação utilizada.
IntelliJ IDEA: IDE para desenvolvimento.
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.
Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Espero que este projeto seja útil no seu aprendizado sobre polimorfismo e interfaces em Java! Se tiver alguma dúvida ou sugestão, não hesite em entrar em contato.
Vamos codar! 🚀