1

Java para quem está iniciando

#Estrutura de dados #Lógica de Programação #Java
José Júnior
José Júnior

#CONCEITO INICIAL

- PROGRAMAS GRANDES SÃO DIVIDIDOS EM UNIDADES MAIS OU MENOS ISOLADAS = POO (PROGRAMAÇÃO ORIENTADA A OBJETOS);

- OS OBJETOS, EM JAVA, SÃO COMPOSTOS POR:

-- ATRIBUTOS = NOME, TAMANHO, COR, PESO.

-- MÉTODOS = OPERAÇÕES: DETERMINADO COMPORTAMENTO / PROCESSOS PARA OS OBJETOS.

- OS OBJETOS SÃO ORGANIZADOS DE FORMA HIERÁRQUICA -> APRESENTADOS EM PACOTES;

- TODO PROGRAMA EM JAVA USA CLASSES E OBJETOS.

- JAVA É UMA LINGUAGEM RELATIVAMENTE COMPLICADA E EXIGE MUITA DIGITAÇÃO DE CÓDIGOS;

- ANTES DE RODAR O PROGRAMA, É NECESSÁRIO COMPILAR.


#CLASSES

- CLASSES SÃO USADAS PARA AGRUPAR OBJETOS;

- CLASSE CARRO [GUARDA OBJETOS]:

-- GOL 2016

-- FIESTA 2015

-- FUSCA 1964

- CLASSIFICAÇÃO BÁSICA [SE APLICA AOS OBJETOS]:

-- PÚBLICA (PUBLIC): PODE SER ACESSADA POR QUALQUER FUNÇÃO OU CLASSES;

-- PRIVADA (PRIVATE): VISÍVEL APENAS À CLASSE PERTENCENTE.

- RELACIONAMENTOS ENTRE CLASSES FORMAM "ÁRVORES". 


#OBJETOS

- TRATA-SE DE PEQUENOS PEDAÇOS SEPARADOS;

- SÃO EXTENSÕES DO MUNDO REAL PARA O MUNDO DA PROGRAMAÇÃO;

- NÃO SÃO LIMITADOS APENAS A COISAS QUE EXISTEM NO MUNDO REAL;

- SUBDIVIDEM-SE EM TRÊS TIPOS [IR AO RESTAURANTE]:

-- OBJETOS TANGÍVEIS -> RESTAURANTE;

-- INCIDENTE (EVENTO OU OCORRÊNCIA) -> RECEBER O CASAL;

-- DE INTERAÇÃO (TRANSAÇÃO OU CONTRATO) -> PEDIR CONTA.

- OBJETOS GUARDAM DADOS OU INFORMAÇÕES:

-- SOBRE SUA ESTRUTURA (SEUS ATRIBUTOS);

-- COMPORTAMENTO DEFINIDO POR SUAS OPERAÇÕES.

- INSTÂNCIAS:

-- MESMA CLASSE E CAMPOS, MAS COM ATRIBUTOS DIFERENTES [CARRO]:

--- GOL 2016

--- FIESTA 2015

--- FUSCA 1964

-- PERCEBA QUE O NOME E O ANO SÃO VALORES DIFERENTES.


#OUTROS CONCEITOS BÁSICOS EM JAVA


[IDE - INTEGRATED DEVOLOPMENT ENVIRONMENT]

- AMBIENTE DE DESENVOLVIMENTO INTEGRADO;

- PERMITE A EDIÇÃO E COMPILAÇÃO DAS INSTRUÇÕES CRIADAS;

- CONTAM COM DIVERSOS RECURSOS QUE AUXILIAM A TAREFA DE PROGRAMAR:

-- EDITORES;

-- COMPILADORES;

-- DEPURADORES;

-- GERADORES DE DISTRIBUIÇÕES.

- PRINCIPAIS IDEs:

-- ECLIPSE;

-- BLUEJ;

-- JCREATOR;

-- JDEVELOPER;

-- NetBEANS.


[JDK - JAVA DEVELOPMENT KIT]

- USADO NO PROCESSO DE DESENVOLVIMENTO E COMPILAÇÃO DE PROGRAMAS;

- TEM AS FERRAMENTAS BÁSICAS DE COMPILAÇÃO E TODOS OS ELEMENTOS BÁSICOS DA PLATAFORMA JAVA.


[JRE - JAVA RUNTIME ENVIRONMENT]

- AMBIENTE DE TEMPO DE EXECUÇÃO JAVA;

- UTILIZADO PARA EXECUTAR AS APLICAÇÕES DA PLATAFORMA JAVA;

- COMPOSTO POR:

-- BIBLIOTECAS (API - APPLICATION PROGRAMMING INTERFACES);

-- MÁQUINA VIRTUAL JAVA (JVM - JAVA VIRTUAL MACHINE).


[JVM - JAVA VIRTUAL MACHINE]

- CRIA UMA MÁQUINA VIRTUAL;

- TEM A FUNÇÃO DE CARREGAR AS CLASSES DO PROGRAMA COM SEGURANÇA;

- VERIFICA SE OS bytecodes ADEREM ÀS ESPECIFICAÇÕES DO SOFTWARE;

- INTERPRETA O CÓDIGO DA PLATAFORMA JAVA;

- COLETA DE LIXO AUTOMATICAMENTE = EXCLUI UM OBJETO QUE DEIXOU DE SER REFERENCIADO.


#PROCESSO DE ARMAZENAMENTO E EXECUÇÃO DO JAVA

1. ARQUIVO SALVO NO ARMAZENAMENTO: ".java"

2. COMPILADOR JAVA:

- CRIA OS "bytecodes" SE O CÓDIGO-FONTE NÃO ESTIVER COM ERROS.

- FORMATO DE CÓDIGO ENTRE:

-- O CÓDIGO-FONTE (MANIPULADO PELO DESENVOLVEDOR)

-- O CÓDIGO DA MÁQUINA (EXECUTADO PELO COMPUTADOR)

- OS ARMAZENAM COM A EXTENSÃO ".class"


*COMPILADOR JAVAC (JAVA COMPILER) = javac.exe


[Código-fonte: teste.java] - javac -> [Binário Java: teste.class] - java -> [Código de máquina]


3. O CARREGADOR DE CLASSES LÊ O ARQUIVO ".class" E O ARMAZENA NA MEMÓRIA.

4. O VERIFICADOR CONFIRMA SE TODOS OS "bytecodes" SÃO VÁLIDOS E SEGUROS.

   O JVM LÊ ESSE CÓDIGO INTERMEDIÁRIO -> TRANSFORMANDO ELE EM CÓDIGO DE MÁQUINA.


#CARACTERÍSTICAS DA LINGUAGEM JAVA


1. ORIENTAÇÃO A OBJETOS: TODA ESTRUTURA É BASEADA NESSE CONCEITO;

2. PORTÁTIL: OS PROGRAMAS CRIADOS PODEM SER EXECUTADOS EM QUALQUER PLATAFORMA OPERACIONAL;

3. AUSÊNCIA DE PONTEIROS: NÃO TEM PONTEIROS, POR ISSO, NÃO PERMITE A MANIPULAÇÃO DIRETA DE ENDEREÇOS NA MEMORY;

4. DESEMPENHO: APRESENTA ALTO DESEMPENHO PORQUE O CÓDIGO É INTERPRETADO [COMPILADO -> INTERPRETADO];

5. MULTITHEREADING: THREAD É O NOME DADO A UM FLUXO DE EXECUÇÃO. O JAVA PERMITE A EXECUÇÃO DE VÁRIAS DESSAS ROTINAS.


#EXCEÇÕES EM JAVA

- O TRATAMENTO DE EXCEÇÕES = TRATAMENTO DE ERROS;

- TODOS OS ERROS E EXCEÇÕES SÃO DERIVADOS DA SUPERCLASSE "Throwable". 


#TIPOS DE DADOS EM VARIÁVEIS EM JAVA


Boolean = DOIS VALORES POSSÍVEIS: VERDADEIRO OU FALSO (TRUE/FALSE) [LÓGICO].

Byte = VARIÁVEL NUMÉRICA 8 BYTES.

Short = VARIÁVEL NUMÉRICA 16 BYTES.

Int = VARIÁVEL NUMÉRICA 32 BYTES.

Long = VARIÁVEL NUMÉRICA 64 BYTES.

Float = VARIÁVEL NUMÉRICA 32 BYTES QUE INCLUI NÚMEROS DECIMAIS [REAL].

Char = UM ÚNICO CARACTERE [CARACTER].

String = CONJUNTO DE CARACTERES:NÚMERICOS, PALAVRAS, SIMBOLOS ESPECIAIS [LITERAL/CARACTERE].


#OPERADORES


OPERADORES DE ATRIBUIÇÃO

= REPRESENTA O ARMAZENAMENTO DE UM VALOR EM UMA VARIÁVEL.


OPERADORES ARITMÉTICOS

++ ADIONA 1 AO VALOR

-- SUBTRAI 1 AO VALOR

* MULTIPLICAÇÃO

/ DIVISÃO

Math UTILIZA MÉTODOS DESSA CLASSE PARA POTENCIAÇÃO

% MÓDULO

+ ADIÇÃO

- SUBTRAÇÃO


OPERADORES RELACIONAIS

> MAIOR

>= MAIOR OU IGUAL

< MENOR

<= MENOR OU IGUAL

== IGUAL

!= DIFERENTE 


OPERADORES LÓGICOS

&& OPERADOR e

|| OPERADOR ou

! OPERADOR não


PROCEDÊNCIA DOS OPERADORES

1. SÃO CALCULADOS OS FATORIAIS.

2. SÃO CALCULADAS AS FUNÇÕES E POTÊNCIAS (+ RAIZ QUADRADA).

3. SÃO CALCULADAS AS MULTIPLICAÇÕES E DIVISÕES.

4. SÃO CALCULADAS AS ADIÇÕES E SUBTRAÇÕES.


PROCEDÊNCIA DAS OPERAÇÕES

1. OPERAÇÕES ARITMÉTICAS.

2. OPERAÇÕES RELACIONAIS.

3. OPERAÇÕES LÓGICAS.


REFERÊNCIAS UTILIZADAS

MARINHO, Antonio Lopes Marinho. Programação Orientada a Objetos. São Paulo: Pearson Education do Brasil, 2016.

DEVMEDIA. Programação orientada a objetos com Java. Disponível em: <https://www.devmedia.com.br/programacao-orientada-a-objetos-com-java/18449#:~:text=Orienta%C3%A7%C3%A3o%20a%20objetos%20no%20Java&text=Em%20Java%2C%20isso%20%C3%A9%20feito,na%20linguagem%20sem%20utiliz%C3%A1%2Dlos.>. Acesso em: 03 de Março de 2021.

3
62

Comentários (3)

1
⚡Eros Lima

⚡Eros Lima

03/03/2021 23:13

Que top "J.J.", só tome cuidado com os UpperCase muitos podem interpretar como um GRITOOO!


Parabéns conteúdo top, se colocar no github e deixar o link a galera e eu mesmo vou adorar, muito top!


Detalhe, data do livro 2016, isso seria Java 8 ou ?

2
E

Edmar Sousa

03/03/2021 21:41

Muito bom. Salvei o Link para consultas futuras. Obrigado!

2
Marcelo Fonseca

Marcelo Fonseca

03/03/2021 15:11

Boa José Júnior!

Software is like sex; it's better when it's free (Linus Torvalds) 🐃🐧💻

Brasil