mini aula-java
TRANSCRIPT
![Page 1: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/1.jpg)
Mini aula JAVAMini aula JAVA
![Page 2: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/2.jpg)
Apresentação
Wanderlei Silva do Carmo
− Twitter: @w3ae
− Youtube: youtube.com/w3ae
Analista e desenvolvedor de sistemas Formado pelo Universidade Estácio de Sá –
RJ Pós-graduando em Engenharia e Arquitetura
de Software Especialista Linux Atuando na área desde 1999 como instrutor
em centros de treinamentos
![Page 3: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/3.jpg)
Objetivo
Mini-aula sobre a linguagem de programação Java explanando sua origem e principais características.
![Page 4: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/4.jpg)
Agenda Origem do Java
Principais Características
JDK e JRE
JVM – Java Virtual Machine
Tipos de aplicações em JAVA
Ferramentas para desenvolvimento JAVA
Quem usa JAVA ???
Exemplo de código em JAVA
Orientação à Objetos
Classes e Objetos
Atributos e Métodos
Visibilidade
Encapsulamento
Herança e Polimorfismo
Tipos de Classes
Métodos Estáticos
Interfaces
![Page 5: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/5.jpg)
Origem do Java
A história começa em 1991, quando um grupo de colaboradores da empresa San Hill Road, filiada a Sun (hoje pertence a Oracle), tiveram a ideia de fazer com que os eletrodomésticos comunicarem-se entre si.
O grupo entendia que a tecnologia não poderia ficar presa aos sistemas operacionais, segundo eles, pois se assim fosse, o projeto fiaria inviável, então com essa justificativa foi desenvolvido o sistema operacional GreenOS.
Criaram a linguagem de programação Oak (carvalho). Na época do registro do nome não puderam utilizá-lo porque já estava registrado, quando então passou a se chamar Java, fazendo referencia ao hábito dos desenvolvedores de tomar café e ao local de origem dos grãos. É por isso que o logotipo é uma xícara de café.
Em 1993, a empresa FirstPerson junto com a Time-Warner estava pedindo propostas de sistemas operacionais de decodificadores e tecnologias de vídeo sob demanda. Foi na época em que o NCSA apresentou o MOSAIC 1.0, o primeiro navegador gráfico para Web. Então a empresa FirstPerson apostou nos testes da TV da Time-Warner, mas esta empresa acabou escolhendo a tecnologia oferecida pela Silicon Graphics.
Em 1995 a Sun viu uma oportunidade na Web, nessa época nas páginas não existia muita interatividade, apenas conteúdos estáticos eram exibidos. Então nesse ano a Sun anunciou o ambiente Java, sendo um absoluto sucesso, gerando uma aceitação aos browsers populares como o Netscape Navigator e padrões tridimensionais como o VRML (Virtual Reality Modeling Language - Linguagem de Modelagem para a Realidade Virtual).
O Java foi o primeiro a utilizar decodificares de televisões interagindo em dispositivos portáteis e outros produtos eletrônicos de consumo, foi do mesmo jeito que foi iniciado em 1991, possuindo portabilidade para qualquer ambiente e do desenvolvimento para múltiplas plataformas, em ambientes de eletrônicos de consumo, desde então o Java vem liderando o mercado em termos de linguagem
![Page 6: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/6.jpg)
Principais Características
Suporte à orientação a objetos; Portabilidade; Segurança; Linguagem Simples; Alta Performance; Dinamismo; Interpretada (o compilador pode executar os
bytecodes do Java diretamente em qualquer máquina);
Distribuído; Independente de plataforma; Tipada (detecta os tipos de variáveis quando
declaradas);
![Page 7: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/7.jpg)
JDK e JRE
Para criar aplicações Java, ter o JDK (Java Development Kit) que inclui o Java Runtime Environment, o compilador Java e as APIs Java. É fácil começar a desenvolver programas em Java, tanto para os novos programadores quanto para os experientes.
Java Runtime Environment (JRE) significa Ambiente de Tempo de Execução Java, e é utilizado para executar as aplicações da plataforma Java.
![Page 8: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/8.jpg)
JVM – Máquina Virtual Java - (Java Virtual Machine)
O compilador Java lê o código fonte e gera código intermediário denominado “bytecodes” que serão interpretados pela máquina virtual java que por sua vez gera código de máquina de acordo com a plataforma de destino;
Isso permite-nos desenvolver sem se nos preocuparmos com o tipo de sistema operacional ou plataforma de destino;
![Page 9: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/9.jpg)
Processo de compilação sem Máquina Virtual
![Page 10: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/10.jpg)
Processo de compilação com JVM
![Page 11: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/11.jpg)
Java é uma linguagem de programação de uso geral, isto quer dizer que podemos criar aplicativos para os mais variados fins:
Desktop Web Dispositivos móveis
Tipos de aplicações em JAVA
![Page 12: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/12.jpg)
Ferramentas para desenvolvimento em JAVA
Embora possamos desenvolver aplicativos em um editor de textos comum, como o bloco de notas no Windows, existem várias IDE's (ambiente de desenvolvimento integrado) que suportam a linguagem JAVA, dentre as mais utilizadas temos:
Eclipse - https://eclipse.org/downloads/Netbeans - https://netbeans.org/downloads/InteliJ - https://www.jetbrains.com/idea/
![Page 13: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/13.jpg)
Quem usa JAVA???
![Page 14: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/14.jpg)
Configurando o ambiente para desenvolver em Java
Para que se possa compilar um código fonte escrito usando linguagem de programação JAVA os programa para compilar e executar o código deve estar incluso na variável de ambiente PATH. Essa configuração deve ser de acordo com o sistema operacional hospedeiro.− Exemplo:
Linux/Mac:− JAVA_HOME=/usr/local/jdk1.8.0_31− CLASSPATH=.:/usr/local/jdk1.8.0_31/lib− PATH=/home/wanderlei/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:
/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/jdk1.8.0_31/bin
Windows:− O mesmo procedimento:
Substituir “:” por “;” na configuração do PATH, JAVA_HIOME e CLASSPATH
![Page 15: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/15.jpg)
Exemplo de código em java
![Page 16: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/16.jpg)
Compilando:
Listando após compilação:
Executando o programa:
![Page 17: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/17.jpg)
Classe:
representa um conjunto de objetos com características afins.É uma estrutura em código em linguagem de programação que define atributos/propriedades e métodos/comportamentos de um determinado objeto. Alguns definem uma classe com uma forma a partir da qual os objetos são criados.
Objeto:
É a instância de uma classe. Ou seja, é a representação em memória de uma classe.
Uma classe pode ser representada por uma ou várias instâncias/objetos.
Para representar uma classe usamos o que chamamos de variável de instância que contém uma referência a um determinado endereço de memória onde está alocado o objeto.
![Page 18: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/18.jpg)
Orientação à Objetos
![Page 19: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/19.jpg)
Orientação à Objetos:
A orientação a objetos é um modelo de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.
(Wikipedia)
![Page 20: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/20.jpg)
Classe e Objetos
![Page 21: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/21.jpg)
Classe:
representa um conjunto de objetos com características afins.É uma estrutura em código em linguagem de programação que define atributos/propriedades e métodos/comportamentos de um determinado objeto. Alguns definem uma classe com uma forma a partir da qual os objetos são criados.
Objeto:
É a instância de uma classe. Ou seja, é a representação em memória de uma classe.
Uma classe pode ser representada por uma ou várias instâncias/objetos.
Para representar uma classe usamos o que chamamos de variável de instância que contém uma referência a um determinado endereço de memória onde está alocado o objeto.
![Page 22: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/22.jpg)
Atributos:
São variáveis de instâncias que definem propriedades de um determinado objeto.
Métodos:
São ações/comportamentos desejáveis para o objeto.
![Page 23: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/23.jpg)
Visibilidade de atributos e métodos (escopo):
Os atributos e métodos de uma classe podem ter sua visibilidade configurada como publica, privada e protegida.
Visibilidade Pública:
Os atributos e/ou métodos poderão ter seus valores acessados pela classe ou quaisquer outras instâncias de outras classes que os solicitar.
Visibilidade Protegida:
Os atributos e/ou métodos poderão ter seus valores acessados pela classe, ou pelas classes que pertencem ao mesmo pacote.
Visibilidade Privada:
Os atributos e/ou métodos poderão ter seus valores acessados apenas pela própria classe ou instância.
![Page 24: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/24.jpg)
Encapsulamento
É uma forma de proteção aos atributos de uma classe de forma que somente poderão ser acessados por outras classes ou instâncias a partir de seus métodos. Fazendo assim, geralmente o encapsulamento se constituem de atributos privados sendo acessados por métodos públicos. Dessa forma abstraímos complexidades de uma determinada operação interna e deixamos exposto apenas o que é necessário para que um determinado estado seja alterado.
Ex.: Mudar o canal de uma TV.
Não precisamos saber como o processo é executado internamente, apenas apertamos o botão mudar canal do controle remoto.
![Page 25: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/25.jpg)
Herança:
Uma classe poder ser construída a partir de uma outra classe herdando seus atributos e métodos. Quando isto ocorre há o que chamamos de uma especialização da classe. Ou seja, teremos uma classe (derivada) que além de fazer o que a outra a (ancestral) faz também serão adicionados outros atributos e métodos específicos.
![Page 26: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/26.jpg)
Polimorfismo:
Uma classe poderá herdar comportamentos de sua classe ancestral e alterar este comportamento para realizar a operação de forma diferente.
![Page 27: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/27.jpg)
Tipos de classe:
- Concreta:É a classe que a partir dela o objeto pode ser criado.
- AbstrataÉ uma classe que não pode ser instanciada diretamente.
- FinalÉ uma classe que não poderá ter classes filhas
Interfaces:
Interface é um contrato firmado com a classe que a implementa que determina esta deve implementar os métodos cujas assinaturas estão mencionadas em seu corpo.
Métodos Estáticos:
São métodos que pertencem a classe e não a instância e podem se acessadas sem ser necessário instanciá-la.
![Page 28: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/28.jpg)
Referências
http://www.devmedia.com.br/java-historia-e-principais-conceitos/25178#ixzz3Wpppribm
Imagens:
• http://www.devmedia.com.br
•http://sbtaudiencia.blogspot.com.br/2012_06_24_archive.html
Logotipos JAVA - propriedade Oracle/JAVA
![Page 29: Mini aula-java](https://reader030.vdocuments.net/reader030/viewer/2022032421/55a6ff0a1a28abe85e8b45e0/html5/thumbnails/29.jpg)