GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Java

Valdir Donizete Portugiesisch

Java

Inhalt der Mindmap

Java

  1. Primeiros comandos

    • O java é orientado a objetos, então deve ser decomposto em classes, sendo que uma dessas classes, e recomendado que só uma, terá o método main, onde serão efetivamente executados os codigos
      • Metodo main: public static void main(String [] args){ "comandos" }
    • JOptionPane
      • O JOptionPane é uma ferramenta que cria caixas de textos graficas que permitem uma maior interação com o usuario, é usada inicialmente para obter inputs e mostrar prints dos usuarios
      • Deve ser importada de seu pacote: import javax.swing.JOptionPane;
      • Comandos
        • JOptionPane.showMessageDialog(component, "mensagem")
          • Mostra uma mensagem na tela, o compenent é um objeto grafico, que como não temos ainda pode usar "null", "mensagem" é a menssagem que vai aparecer na tela
        • JOptionPane.showInputDialog("Menssagem");
          • Obtem um input do usuario em forma de string, podendo escrever uma menssagem na "menssagem"
        • Comandos Extras
          • showConfirmDialog
            • Esse método exibe uma caixa de diálogo na qual o usuário pode dar sua resposta por meio de botões. A versão do método utilizada pede quatro parâmetros: o primeiro é a janela pai; o segundo é a pergunta que será exibida para o usuário; o terceiro é o título da caixa de diálogo; o quarto define quais são os botões exibidos. As opções são YES_NO_CANCEL_OPTION e YES_NO_OPTION
              • As opções de resposta são: : YES-OPTION, NO_OPTION ou CANCEL_OPTION e cada uma representa um valor inteiro
  2. Observações

    • Para usar os tipos long e float tem-se que adicionar L ou F, repectivamente, ao final do numero
    • Forçar Erros ou exceções
      • Podemos forçar exceções atraves do comando throw, como objetivo de indicar, atraves de algumas condições, que aquela operação devia gerar um erro
        • É uma boa prática de programação lançar uma exceção quando alguma rotina de validação de dados não for bem-sucedida, ou seja, lançar throws nos setters das classes
    • Códigos avulsos
  3. Formatações e converções

    • String.format("texto", valores)
      • é usado para formatar strings, formatando o tamanho dos números por exemplo
      • dentro do texto encontraremos um sinal % e uma letra (d ou f) indicando que irá receber o valor de uma variavel indicado em valores, sendo %d para receber decimais e %f para receber floats
    • Conversões com classes Wrapper
      • Classes wrapper são classes de tipos primitivos que possui metodos de conversão de tipos
      • Metodo Parse
        • é usada para converter strings em outros tipos primitivos, deve usar a classe correspondente
      • Metodo Value
        • Usado para converter valores numericos de tipos primitivos para outros tipos primitivos
  4. Codigos Padrões

    • Criação de Classes com Getters e Setters
    • Método Construtor
      • Método construtor é um método que é executado sempre que um objeto é instanciado. Esse método deve possuir exatamente o mesmo nome da classe e não deve apresentar nenhum tipo de retorno, nem mesmo void
      • Uma vez que a classe tenha um construtor qualquer, o compilador não irá criar o construtor padrão. Caso queiramos um construtor sem parâmetros, devemos declará-lo explicitamente
    • Condições
      • If/else
      • Switch case
        • A cláusula default, que é opcional, é executada se nenhuma outra cláusula case foi executada
    • Repetição
      • For
        • for tem três parâmetros: o primeiro é uma definição de uma variável contadora; o segundo é a condição que, se verdadeira, permitirá que o laço seja repetido mais uma vez; e o terceiro é a lógica de incremento (ou decremento) da variável contadora
      • while e do/while
        • O laço while inicia testando a condição de parada. Se ela for verdadeira, ele irá executar o conjunto de instruções de repetição. Em algum momento durante a execução, a condição de parada deve ser alterada para falsa, de modo a fazer com que o laço encerre
        • O laço do-while inicia executando uma vez o conjunto de instruções de repetição. A seguir ele verifica a condição de parada. Se ela estiver verdadeira, o loop reinicia. Novamente, em algum momento, a condição de parada deve ser alterada para falsa, para que o laço termine
      • Foreach
        • Um tipo diferente do for, usado para buscar elementos de vetores e listas até os elementos acabarem
          • Essa forma recebe dois parâmetros separados por dois-pontos (em vez de ponto-e-vírgula): o primeiro é uma definição de cada elemento da estrutura definida pelo segundo parâmetro, o segundo parâmetro pode ser uma coleção ou um vetor. Esse laço, então, irá percorrer todos os elementos dentro do vetor/lista e irá chamar cada elemento do vetor/lista e irá executar os comandos
    • Conjuntos
      • Arrays
        • Um array é um conjunto de variáveis de mesmo tipo
        • Um array deve ser instanciado como se fosse um objeto, com o operador new, seguido do tipo de dado de cada elemento do vetor e da quantidade de elementos do vetor
          • e os índices de vetores em Java iniciam com o valor 0
      • Coleções
        • Uma coleção é um conjunto de variáveis semelhante a um array, mas que pode ter o seu tamanho modificado conforme a necessidade
          • Só recebe tipos de classes, para usar tipos primitivos é necessario usar a classe Wrapper
            • add é usado para adicionar valores
              • get(0) é usado para obter os valores, sendo o 0 representando a posição dentro da lista
          • é necessario importar uma pasta para usar este metodo
    • Tratamento de Exceções
      • Try/Catch
        • é composto de blocos try-catch ou try-catch-finally
        • No bloco try é implementado o código que pode provocar uma exceção. No bloco catch é implementado o código que será executado caso uma exceção ocorra. No bloco opcional finally é implementado o código que deve ser executado tendo ocorrido uma exceção ou não
  5. Orientação a Ojetos

    • Herança
      • Usado para uma classe herdar todos os metodos e atributos de outra classe
        • Usa a palavra extends
          • classe Aluno é declarada com a palavra reservada extends, que indica que a classe herda da classe Pessoa
        • Caso a classe pai possua atributos privados, a classe filha também terá esses atributos, porém não terá acesso direto a eles, sendo necessario utilizar os metodos getters e setters para modifica-los, mesmo sendo herança
      • Caso queira utilizar atributos ou metodos, não privados, da classe pai, é necessario usar a palavra reservada "super"
        • Isso é valido inclusive para os métodos construtores
        • Essa referência funciona de maneira análoga à referência this, mas enquanto this referencia o próprio objeto, super referencia a superclasse
    • Polimorfismos
      • Sobrecarga
        • podemos criar quantos métodos queiramos em uma classe com o mesmo nome, desde que eles tenham uma lista de parâmetros que seja diferente em quantidade, em tipo ou em quantidade e tipo
          • Caso os parametros sejam de mesma quantidade e tipo, a compilação apresentará erro
        • Usamos a Sobre carga quando os métodos sobrecarregados realizam a mesma tarefa, mas de maneiras diferentes
      • Sobrescrita
        • É usada para alterar o funcionamento de um metodo herdado da superclasse, possui exatamente a mesma assinatura do método herdado da superclasse, ou seja, ele possui o mesmo nome, os mesmos parâmetros e o mesmo tipo de retorno
          • é uma boa pratica colocar "@override" antes do metodo a ser sobrescrito
      • Polimorfismo de Classes
        • É considerado o conceito mais importante da orientação a objetos, consiste em tratar objetos de uma classe como se fossem de outra classe, desde que a classe seja ancestral da outra
          • Uma classe filha pode ser tradada como uma classe pai, porém uma classe pai não pode ser tratada com uma classe filha
            • No exemplo ao lado, o metodo entradaDaLoja() tem como parametro um objeto da classe geral pessoa, porém, aceita a entrada de um objeto da classe aluno, que é a especialização da classe pessoa, e a trata como se fosse da classe pessoa, produzindo como resposta a mensagem mais abaixo
              • Dica: O polimorfismo está presente na maioria das melhores práticas de programação orientada a objetos. Por exemplo, quase todos os padrões de Projeto são aplicações muito inteligentes do polimorfismo para resolver problemas frequentes em programação orientada a objetos. Quanto maior for seu domínio sobre esse conceito, melhor será seu desempenho como desenvolvedor
    • Modificadores de Acesso
      • Utilizamos os modificadores de acesso private e public para encapsular atributos, ou seja, protegemos os atributos tornando-os inacessíveis, permitindo o acesso a eles por métodos acessores públicos que fazem a consistência de dados
        • A orientação a objetos define quatro modificadores de acesso para os membros (atributos e métodos) da classe: Public, Protected, Padrão e Private
          • É uma boa prática de programação definir todos os membros inicialmente com o modificador mais restritivo (privado). Conforme a necessidade de acesso ao membro vai surgindo, o modificador de acesso deve ser alterado gradativamente na direção do modificador público.
  6. Mais orientação a objetos)

    • Escopo
      • Existem dois tipos de escopo, o escopo de objeto, padrão, e o escopo de classe
        • Escopo de objeto: quando os métodos e atributos pertencem ao objetos, é o que acontece por padrão
        • Escopo de classe: é quando os métodos e atributos pertencem à classe, para que isso ocorra é necessario usar a palavra reservada "static"
          • Um método de classe pode ser chamado diretamente da sua classe, não sendo necessário instanciar nenhum objeto da classe
          • Um atributo de escopo de classe terá o mesmo valor para a classe e para todos os seus objetos. Se o seu valor for modificado em qualquer um deles, o valor será modificado em todos
          • Um método de escopo de objeto é executado em um objeto. Por isso, ele terá acesso a qualquer método e qualquer atributo da classe, sejam eles de qualquer um dos dois escopos. Por outro lado, um método de escopo de classe, quando executado, não tem acesso a qualquer objeto, pois ele só “conhece” a sua classe. Por isso, ele não consegue acessar membros que sejam de escopo de objeto, ele só pode acessar membros de classe como ele próprio
    • Abstração e interfaces
      • Abstração
        • Metodos abstratos são métodos sem implementação, eles são usados quando se deseja estabelecer uma classe pai com métodos padrão mas sem que essa classe possa ser implementada, apenas suas classes filhas
          • Um exemplo disso é a do livro texto unidade dois tópicos de POO, das figuras geometricas
        • Quando se criam métodos abstratos em uma classe, essa classe também deve ser obrigatoriamente abstrata
          • Uma classe abstrata pode definir métodos e atributos concretos (não abstratos). Mas por conter métodos sem implementação, uma classe abstrata não pode ser instanciada, ela só pode ser usada com polimorfismo
          • as classes que herdam de uma classe abstrata devem obrigatoriamente Sobrescrever todos os seus métodos abstratos se quiserem ser classes concretas, caso contrário, elas também serão abstratas (não é necessario usar o "@override")
        • Deve-se usar a palavra "abstract" para indicar que se trata de uma classe/método abstrato
      • Interface
        • Para ser implementada deve usar a palavra "interface" ao invés de "abstract class"
          • Também não é necessario usar abstract nós metodos
        • Outra alteração é que ao invés de usar "extends" na herança, usamos "implements"
          • Isso ocorre pois não se usa o termo herdar de uma interface e sim realizar, implementar
            • Uma classe que realiza uma interface deve obrigatoriamente implementar todos os seus métodos
        • Usada para estabelecer padrões de criação classes
          • Uma interface é uma classe abstrata que só define métodos abstratos
            • Ela não possui métodos concretos nem atributos de qualquer tipo

Bilder und Dateien der Mindmap

  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java
  • Java

Informationen

Beschreibung
Mindmap am Java, erstellt von Valdir Donizete am 18/10/2021.
Erstellt von
Valdir Donizete
Aufrufe
2
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck