0% acharam este documento útil (0 voto)
9 visualizações6 páginas

Java OO

O documento fornece uma visão abrangente sobre conceitos fundamentais da linguagem Java, incluindo pacotes, importações, programação orientada a objetos, tipos de dados, componentes gráficos do Swing, gerenciadores de layout, tratamento de eventos e coleções. Cada tópico é detalhado com definições e exemplos de uso, abordando desde a declaração de classes até a manipulação de eventos e streams. É um guia útil para desenvolvedores que desejam entender e aplicar esses conceitos em suas aplicações Java.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
9 visualizações6 páginas

Java OO

O documento fornece uma visão abrangente sobre conceitos fundamentais da linguagem Java, incluindo pacotes, importações, programação orientada a objetos, tipos de dados, componentes gráficos do Swing, gerenciadores de layout, tratamento de eventos e coleções. Cada tópico é detalhado com definições e exemplos de uso, abordando desde a declaração de classes até a manipulação de eventos e streams. É um guia útil para desenvolvedores que desejam entender e aplicar esses conceitos em suas aplicações Java.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

A resposta é organizada por tópicos para facilitar a compreensão.

• Pacotes, Importações e Fundamentos da Linguagem

●​ package: Declara o pacote ao qual a classe pertence. Pacotes são usados para
agrupar classes relacionadas.​

●​ import: Importa classes, interfaces ou membros estáticos de outros pacotes para


uso no código atual.​

●​ class: Declara uma classe.​

●​ extends: Indica que uma classe herda de outra.​

●​ implements: Indica que uma classe implementa uma ou mais interfaces.​

●​ new: Operador usado para criar uma nova instância de uma classe.​

●​ this: Referência à instância atual do objeto. Usado para referenciar membros da


própria classe ou passar a instância atual como parâmetro.​

●​ super: Usado para referenciar membros (construtores ou métodos) da superclasse.​

●​ var: Palavra-chave (a partir do Java 10) para inferência de tipo local, reduzindo a
verbosidade. O compilador deduz o tipo da variável a partir do valor inicial.​

●​ try...catch: Bloco usado para tratar exceções que podem ocorrer durante a
execução do código.​

●​ try with resources: Variação do try que garante o fechamento automático de


recursos, mesmo com exceções.​

●​ throw / throws:​

○​ throw: Lança explicitamente uma exceção.​

○​ throws: Declara, na assinatura do método, que ele pode lançar uma


exceção.​

• Programação Orientada a Objetos


●​ private: Membro acessível apenas dentro da própria classe.​

●​ public: Membro acessível de qualquer outra classe.​

●​ protected: Membro acessível na própria classe, em subclasses e no mesmo pacote.​

●​ static: Membro pertencente à classe, não à instância.​

●​ final:​

○​ Variável: valor imutável após a inicialização.​

○​ Classe: não pode ser herdada.​

○​ Método: não pode ser sobrescrito.​

●​ @Override: Anotação que indica sobrescrita de método da superclasse ou interface.​

• Tipos de Dados Primitivos e Objetos Comuns

●​ int: Números inteiros.​

●​ String: Sequência de caracteres (imutável).​

●​ boolean: Valores verdadeiro ou falso.​

●​ double: Números de ponto flutuante de precisão dupla.​

●​ long: Números inteiros maiores.​

●​ null: Indica ausência de referência a um objeto.​

●​ LocalDate: Representa uma data (sem hora).​

●​ Set<E>: Coleção de elementos únicos (ex.: HashSet, TreeSet).​

●​ List<E>: Coleção ordenada (ex.: ArrayList).​

●​ Dimension: Representa largura e altura de um componente.​

●​ Color: Representa uma cor (possui constantes estáticas).​


●​ Insets: Representa margens de um componente (usado com
GridBagConstraints).​

• Classes e Métodos de Swing

Componentes Gráficos:

●​ JFrame: Janela principal da aplicação.​

●​ JDialog: Janela secundária/modal.​

●​ JInternalFrame: Janela interna (ex.: IDEs).​

●​ JPanel: Container leve para agrupar componentes.​

●​ JLabel: Exibe texto ou imagem (suporta HTML).​

●​ JTextField: Entrada de texto de uma linha.​

●​ JTextArea: Entrada de texto de múltiplas linhas.​

●​ JPasswordField: Entrada de senha (oculta caracteres).​

●​ JButton: Botão clicável.​

●​ JTable: Exibe dados em tabela (utiliza TableModel).​

●​ JScrollPane: Adiciona barras de rolagem a componentes.​

●​ JMenuBar: Barra de menu de uma janela.​

●​ JMenu: Menu dentro da JMenuBar.​

●​ JMenuItem: Item de menu (dispara ActionEvent).​

●​ JOptionPane: Caixas de diálogo padrão (JDialog modal).​

●​ JFileChooser: Diálogo para selecionar arquivos.​

Métodos Comuns:

●​ setSize(int width, int height): Define tamanho do componente.​


●​ setDefaultCloseOperation(int operation): Define ação ao fechar janela
(EXIT_ON_CLOSE, DISPOSE_ON_CLOSE, etc.).​

●​ setLocationRelativeTo(Component c): Centraliza janela (null = tela).​

●​ setTitle(String title): Define título da janela.​

●​ setLayout(LayoutManager manager): Define gerenciador de layout.​

●​ add(Component c) / add(Component c, Object constraints): Adiciona


componente ao container.​

●​ setBounds(int x, int y, int width, int height): Define posição/tamanho com layout
desabilitado.​

●​ setIcon(Icon icon): Define ícone de componente.​

●​ getText() / setText(String text): Obtém ou define texto de componentes.​

●​ addActionListener(ActionListener listener): Associa ação a componentes.​

●​ addWindowListener(WindowListener listener): Responde a eventos de janela.​

●​ dispose(): Fecha e libera recursos da janela.​

●​ setDocument(Document doc): Define conteúdo de componente de texto.​

●​ setEditable(boolean editable): Define se campo é editável.​

●​ setLineWrap(boolean wrap) / setWrapStyleWord(boolean word): Controlam


quebra de linha em JTextArea.​

●​ setSelectionMode(int mode): Define modo de seleção (JTable, JList).​

●​ setDefaultRenderer(Class<?> columnClass, TableCellRenderer renderer):


Define renderizador de coluna em JTable.​

●​ getModel() / setModel(TableModel model): Acessa/define TableModel.​

●​ getSelectedRow(): Retorna índice da linha selecionada.​

●​ convertRowIndexToModel(int viewRowIndex): Converte índice da view para o


modelo.​

●​ setRowSorter(RowSorter<?> sorter): Define ordenação/filtragem em JTable.​


●​ setFileFilter(FileFilter filter): Define filtro de arquivos no JFileChooser.​

●​ showSaveDialog(Component parent) / showOpenDialog(Component parent):


Exibem diálogos de salvar/abrir.​

●​ getSelectedFile(): Obtém arquivo selecionado no JFileChooser.​

• Gerenciadores de Layout e Constraints

●​ BorderLayout: Divide container em cinco áreas (PAGE_START, PAGE_END,


LINE_START, LINE_END, CENTER).​

●​ FlowLayout: Layout padrão de JPanel. Posiciona em linha, com quebras.​

●​ GridBagLayout: Layout flexível baseado em grade, com GridBagConstraints.​

●​ GridBagConstraints: Controla posicionamento/redimensionamento no


GridBagLayout (propriedades: gridx, gridy, gridwidth, gridheight, fill,
weightx, weighty, ipadx, ipady, insets, anchor).​

• Tratamento de Eventos e Listeners

●​ ActionListener: Interface para eventos de ação (ex.: clique de botão). Método:


actionPerformed(ActionEvent e).​

●​ ActionEvent: Representa evento de ação.​

●​ WindowListener: Interface para eventos de janela (abrir, fechar, etc.).​

●​ WindowAdapter: Classe que implementa WindowListener com métodos vazios.​

●​ WindowEvent: Representa evento de janela.​

●​ DocumentListener: Interface para eventos em conteúdo de texto (Document).


Métodos: insertUpdate(), removeUpdate(), changedUpdate().​

●​ DocumentEvent: Representa evento de documento.​


• Coleções e Streams (Java 8+)

●​ ArrayList: Lista redimensionável (List).​

●​ HashSet: Conjunto sem ordem garantida (Set).​

●​ TreeSet: Conjunto ordenado naturalmente ou via Comparator.​

●​ Arrays.asList(T... a): Converte array para lista de tamanho fixo.​

●​ Collections.unmodifiableList(List<? extends T> list): Retorna lista imutável.​

●​ Collections.unmodifiableSet(Set<? extends T> s): Retorna conjunto imutável.​

●​ stream(): Cria fluxo de dados sequencial.​

●​ filter(Predicate<? super T> predicate): Retorna novo stream com elementos que
passam no filtro.​

●​ forEach(...): (conteúdo do método incompleto no texto original).

Você também pode gostar