Mind map
Java
Map content
Java
tipos de arquivos
- Java
- Bytecode
- roda em com base JVM que pode ser rodado em vários (SO) diferentes
- Bytecode
- Outros
- Executável
- Só roda em um (SO)
- Executável
- Java
obs
- compilador java
- sistema
- variáveis globais
- path
- variáveis globais
- sistema
- Python(OO)
- convenção de código
- variáveis devem ter nomes longos auto explicativos
- boolean aceita expressões boleanas para retorno
- todos import devem ser feito abaixo do package
- java é case sensiteve
- percebe a diferença entre maiúscula é minuscula
- wireframe
- compilador java
estruturas do modelo OO
- referencias|instancias
- construtores
- https://www.devmedia.com.br/construtores-em-java/28618
- estabelecer parámetro para utilizar a classe
- definir restrições
- Exceção
- https://www.devmedia.com.br/tratando-excecoes-em-java/25514
- Uma exceção representa uma situação que normalmente não ocorre e representa algo de estranho ou inesperado no sistema.
- métodos auxiliares
- System.out.err
- mostrar para compilador que essa é uma mensagem de erro
- printStackTracer
- mostra o rastro percorrido pela exceção
- System.out.err
- métodos de exceções
- https://www.youtube.com/watch?v=8Q3_dxvLL10
- try catch
- pega a exceção
- throwble
- não é uma boa pratica
- throws
- um aviso para o compilador que pode haver alguma exceção
- throw
- lança uma exceção dentro do código
- finally
- exeception
- cheked
- exceções q precisão de throws
- uncheked
- exceções q não precisão de throws
- cheked
- interface gráfica
- http://www.tiexpert.net/programacao/java/joptionpane.php
- métodos
- identificação
- get
- com retorno
- set
- sem retorno
- get
- identificação
- collections|coleções de dados ou estrutura de dados
- array
- o tamanho iniciado na criação da array é imutável
- modelo de inserção literal { }
- o tamanho iniciado na criação da array é imutável
- List
- arraylist
- https://www.devmedia.com.br/explorando-a-classe-arraylist-no-java/24298 http://www.javaprogressivo.net/2012/09/como-usar-arraylist-em-java.html
- automaticamente a própria arraylist aumenta o tamanho, porem quando deleta um dado de um index da lista deixa um buraco void na alocação
- generics:< > é um delimitador do tipo guardado na arraylist
- linkedList
- automaticamente a própria linkedList diminui e aumenta o tamanho com a movimentação dos dados pelos index a depender se for deletado um dado
- mas ha um problema,exemplo:para chegar no index 5 é preciso passar pelos index 0,1,2,3,4
- automaticamente a própria linkedList diminui e aumenta o tamanho com a movimentação dos dados pelos index a depender se for deletado um dado
- vector
- único tipo de lista que funciona em várias THERDS ou múltiplas MAIN
- interface de todos os tipos de listas
- boa pratica sempre instanciar uma lista pelo list e não por ex:arraylist x = new arraylist();
- arraylist
- boa pratica deixar as listas unmodifiablelist
- set|conjuntos
- uma coleção que que não preserva a ordem dos dados salvos
- não aceita elementos repetidos
- hasset
- linkedhasset
- treeset
- uma coleção que que não preserva a ordem dos dados salvos
- map
- array
- Thread
- um processo que conterá um conjunto de códigos
- modificadores de acesso
- public
- private
- protected
- um public q pode ser acessado por classes filhas
- anotação
- @override
- fala pra compilador que deve sobre escrever um método existente
- @override
- tipos de arquivos javas
- classes
- https://www.devmedia.com.br/java-declaracao-e-utilizacao-de-classes/38374
- classes abstratas
- classe rascunhos para uma classe filha
- interface
- um tipo de classe que totalmente abstrata
- padroniza o metodos compartilhados
- pode criar relacionamentos dispersos
- é uma solução para gerar herança mutipla
- classes anonima
- uma classe que não tem nome e que é utilizada apenas para diminuir número class fuction:são classes que não tem atributo e só tem o papel de uma função especifica
- lambdas
- uma braço das classes anonimas mas de código fique menor
- são muito utilizadas com método forEach
- uma braço das classes anonimas mas de código fique menor
- csv
- Os arquivos Comma-separated values, também conhecido como CSV, são arquivos de texto de formato regulamentado pelo RFC 4180, que faz uma ordenação de bytes ou um formato de terminador de linha, separando valores com vírgulas
- enum
- classes
- tipos de textos
- documentação
- Java doc
- /** | */
- tags
- comentário
- /* | */
- documentação
- boas praticas
- isolar o código o máximo possível ou seja deixar o mais encapsulado possível
- todos os objetos devem ser encapsulados até mesmo listas
- deixar as instâncias de objetos o mais genérico possível usando polimorfismo
- nunca lançar nulo um método no lugar de nulo deve lançar exeception
- isolar o código o máximo possível ou seja deixar o mais encapsulado possível
- Organização de pastas
- scr
- para o código fonte
- lib
- para as bibliotecas
- target
- para os executáveis
- scr
atividade importantes
- fatorial
- https://www.youtube.com/watch?v=uQ_76Wn1mkk
- vetor de obj
- https://www.guj.com.br/t/array-de-objetos/38440
- vetor sempre tem que ter uma casa extra para valor nulo
- for só pode percorre vetores não nulos
- criar vetor dentro de outra classe e chamar esta classe como objeto
- são utilizadas funções diferentes em transforma um objeto em String e trocar um valor somente de um atributo
- toString
- são utilizadas funções diferentes em transforma um objeto em String e trocar um valor somente de um atributo
- como chamar uma class pelo import
- https://www.guj.com.br/t/chamar-uma-classe-dentro-de-outra-classe/29669
- diferença entre extends e import
- https://respostas.guj.com.br/24940-diferenca-entre-extendsheranca-e-import
- extends = é um import = tem um
- converter um objeto em String
- https://pt.stackoverflow.com/questions/93866/converter-objeto-para-string
- como usar exceção
- try|catch;https://www.youtube.com/watch?v=ld2C4GcAtsg throwble:https://youtu.be/G8-fhwpHdFU
- erro sleep
- https://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html
- erro ocorre pq o programa não sabe se acabou o codigo ou não,dessa forma thered fica louco
- um método passando outro método como parâmetro
- https://www.guj.com.br/t/passar-metodo-como-parametro-de-outro-metodo-e-possivel/85437
- controle de casas decimais
- https://samuelmg.wordpress.com/2008/08/30/limitando-casas-decimais-com-java/
- não da pra passar um método pra finalizar um while ou for
- https://www.guj.com.br/t/como-finalizar-thread-com-metodo-blocante-de-i-o-resolvido/139721
- a unica maneira de contornar isso e usando thread
- fazer intancia generica
- https://stackoverflow.com/questions/13077009/java-difference-between-a-x-new-a-and-a-x-new-b-when-b-extends-a
- classe A = new B( )
- salvar objeto txt
- https://www.guj.com.br/t/gravar-objeto-em-arquivo/61272
- salvar txt
- https://youtu.be/Ics80J6JgGo
- sem sobrepor
- https://www.guj.com.br/t/escrever-sem-sobrepor/45613
- jframe em outra jframe
- https://youtu.be/6PkjSLdOPNg
- apagar jframe
- https://www.guj.com.br/t/clicar-em-um-botao-e-fechar-um-jframe-e-abrir-outro/83343
- dispose
- chamar jframe em uma classe main
- https://www.youtube.com/watch?v=5nT2ZTnoy_o
- fatorial
funções especiais
- laços de repetição
- while
- enquanto a expressão for verdadeira o bloco de código irar se repitir
- muito bom pra ser usado quando não se sabe o número de repetições necessárias para obtenção de dado
- enquanto a expressão for verdadeira o bloco de código irar se repitir
- do while
- funcionamento igual ao while normal mas com pequena diferença que a verificação da expressão ser feita no final do código
- for
- um laço de repetição com número exato de repetições necessárias para obtenção do dado
- pode se utilizar de artificio para percorre determinada coleção de dados de forma compacta pelo Enhanced-for (int x : nomeLista)
- forEach
- um laço de repetição com número exato de repetições necessárias para obtenção do dado
- while
- laços de repetição
bibliotecas interessantes
- java.text.DecimalFormat
- controles de casas decimais
- java.lang
- biblioteca base para criar qualquer aplicação em java
- o java importa esse biblioteca de forma automática
- biblioteca base para criar qualquer aplicação em java
- java.util
- java.io
- manipulação de arquivos externos
- stream
- leitura de bytes
- read
- leitura de chars
- busfferedReader
- leitura de conjunto de caracteres
- stream
- manipulação de arquivos externos
- java.text.DecimalFormat
termos
- herança
- encapsulamento
- Encapsulamento vem de encapsular, que em programação orientada a objetos significa juntar o programa em partes, o mais isoladas possível. A ideia é tornar o software mais flexível, fácil de modificar e de criar
- por meio getters e setters ou método que tenham a regra de negocio
- Encapsulamento vem de encapsular, que em programação orientada a objetos significa juntar o programa em partes, o mais isoladas possível. A ideia é tornar o software mais flexível, fácil de modificar e de criar
- sobrecarga
- um método que tem a mesma assinatura dentro da mesma classe mas com argumentos diferentes
- sobreEscrita
- criar um novo método na classe filha contendo a mesma assinatura e mesmo tipo de retorno do método sobrescrito
- polimorfismo
- Criar instancia genéricas
- obs pode existir poliformismo de interface
- Criar instancia genéricas
- composição
- uma forma de organizar o código de forma em que dividi partes do códigos em classes que representarão parte do códgio
- obs muito utilizado no final do nome da classes o termo:"util" para exemplificar que é apenas uma classe de composição para uma classe maior
- uma forma de organizar o código de forma em que dividi partes do códigos em classes que representarão parte do códgio
- arquivo JAR
- um arquivo zipado do próprio java
- biblioteca
- executável
- quando for criar o JAR direciona a classe MAIN,para a JVM rodara o executável
- cast ou type cast
- Conversões Implícitas:
- São as conversões que ocorrem sem nenhum cast, como por exemplo passar um valor de um tipo menor para dentro de um tipo maior. Só funciona com tipos menores para dentro de maiores, como byte para short, short para int, int para long, float para double
- Conversões Explícitas
- São as conversões feitas por nós, utilizando os comandos de cast como: (int), (byte), (double), ou métodos de conversão
- Type Cast que é nada mais do que a conversão de um tipo para outro.
- Conversões Implícitas:
- Wrapper
- São classes que contém funcionalidades e encapsulam a variável de tipo primitivo!
- iterando = percorrendo
- properties
- O arquivo de propriedade é uma ótima opção para passar configurações para uma determinada aplicação que necessitada de configurações externas e a mesma em si não pode ser alterada. Um exemplo seria um programa que conecta a um banco de dados e precisa de dados para realizar a conexão, sem que o código fonte do mesmo seja alterado
- serelização
- Em ciência da computação, no contexto de armazenamento e transmissão de dados, serialização é o processo de tradução de estruturas de dados ou estado de objeto em um formato que possa ser armazenado e reconstruído posteriormente no mesmo ou em outro
- devolve em binário
- quando o objeto é serializado ele matem os registros dos métodos e atributos dentro dele,então se houver qualquer tipo de modificação da classes serializada haverá erro
- devolve em binário
- Em ciência da computação, no contexto de armazenamento e transmissão de dados, serialização é o processo de tradução de estruturas de dados ou estado de objeto em um formato que possa ser armazenado e reconstruído posteriormente no mesmo ou em outro
depuração
- line breakpoint
- a linha qual o código deve ser pausado para analise
- step into
- entrar no dentro do código do método da linha
- step over
- pular a linha
- é o processo de encontrar e reduzir defeitos num aplicativo de software ou mesmo em hardware
- line breakpoint
UML
- http://www.macoratti.net/net_uml1.htm
ferramentas build
- são ferramentas para auxiliar o desenvolvedor
- maven
IDEs
- teclas eclipse
- https://www.eclipse.org/pdt/help/html/keymap.htm
- comentar linha
- ctrl + shift + C
- teclas netbens
- http://wiki.netbeans.org/wiki/images/9/93/Shortcuts_pt_BR_Errata55_pt_BR.pdf
- Autocomplete
- ctrl + espaço
- navegar direto ao objeto selecionado
- pressionar CTRL
- identar automaticamente
- Ctrl + i
- teclas eclipse
Information
- Description
- Técnico em Desenvolvimento de Sistemas - SENAI (Segundo Período ) Mind Map on Java, created by Ian Maciel de Carvalho on 11/02/2019.
- Created by
- Ian Maciel de Carvalho
- Views
- 2
- Rating