An open API service indexing awesome lists of open source software.

https://github.com/bulletdev/iphone

Diagrama e JAVA IOS
https://github.com/bulletdev/iphone

Last synced: 9 months ago
JSON representation

Diagrama e JAVA IOS

Awesome Lists containing this project

README

          



Projeto iPhone - Implementação dos Papéis do iPhone


Este projeto em Java representa o iPhone assumindo três papéis principais: Reprodutor Musical, Aparelho Telefônico e Navegador de Internet. As funcionalidades implementadas demonstram o uso de conceitos da Programação Orientada a Objetos (POO) como Abstração, Encapsulamento, Herança e Polimorfismo.

📁 Estrutura do Projeto



ProjetoiPhone/
├── src/
│ ├── ReprodutorMusical.java - Interface para funções de reprodução de música
│ ├── AparelhoTelefonico.java - Interface para funções de chamadas telefônicas
│ ├── NavegadorInternet.java - Interface para funções de navegação na internet
│ └── iPhone.java - Classe que implementa todas as interfaces

🚀 Funcionalidades



  • Funções de reprodução musical incluindo tocar, pausar e selecionar música

  • Funções de chamadas telefônicas incluindo ligar, atender e iniciar conferência

  • Funções de navegação de internet incluindo abrir páginas, atualizar e exibir histórico

🛠️ Tecnologias Utilizadas



  • Java SE (Standard Edition)

📦 Instalação e Execução



  1. Clone o repositório em sua máquina local:
    git clone https://github.com/seu-usuario/projeto-iphone.git


  2. Compile os arquivos:
    cd ProjetoiPhone/src
    
    javac *.java


  3. Execute a aplicação:
    java iPhone


📂 Estrutura das Interfaces e Classe

ReprodutorMusical (Interface)


A interface ReprodutorMusical define os métodos necessários para reprodução de música:




  • tocar() - Inicia a reprodução da música atual


  • pausar() - Pausa a música em reprodução


  • selecionarMusica(String musica) - Seleciona uma música para reprodução

AparelhoTelefonico (Interface)


A interface AparelhoTelefonico define os métodos necessários para funções de telefonia:




  • ligar(String numero) - Realiza uma chamada para o número especificado


  • atender() - Atende uma chamada recebida


  • iniciarConferencia(String[] numeros) - Inicia uma chamada de conferência

NavegadorInternet (Interface)


A interface NavegadorInternet define os métodos necessários para navegação na internet:




  • abrirPagina(String url) - Abre uma página na URL especificada


  • atualizarPagina() - Atualiza a página atual


  • exibirHistorico() - Exibe o histórico de navegação

iPhone (Classe)


A classe iPhone implementa as três interfaces e representa as funcionalidades do iPhone nos papéis de reprodutor musical, aparelho telefônico e navegador de internet. Os métodos são implementados conforme especificações das interfaces.

🔄 Exemplo de Uso


Após compilar e executar o programa, você pode simular as funcionalidades do iPhone:




iPhone iphone = new iPhone();

// Funções de Reprodutor Musical
iphone.selecionarMusica("Música A");
iphone.tocar();
iphone.pausar();

// Funções de Aparelho Telefônico
iphone.ligar("123-456");
iphone.atender();
iphone.iniciarConferencia(new String[]{"123-456", "789-101"});

// Funções de Navegador de Internet
iphone.abrirPagina("https://exemplo.com");
iphone.atualizarPagina();
iphone.exibirHistorico();

📄 Licença


Este projeto é de código aberto e está disponível sob a licença MIT. Consulte o arquivo LICENSE para mais detalhes.

👤 Autor


Desenvolvido por Michael Bullet - GitHub