Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouManoela Portal Alterado mais de 9 anos atrás
2
Java Kickstart, day 2
3
Semelhanças com linguagem C
4
Strings Criação: String name = “Bond”; ou String name = new String(“Bond”); Manipulação name = + “,James Bond”;
5
Strings Objetos podem ser transformados em String com a invocação do toString(), quando necessário: int num = 15; System.out.println(“Valor” + 15);
6
Programas são feitos de classes
7
Composição das classes: Campos - Variáveis e objetos internos. São responsáveis pelo estado do objeto. Métodos - funções que operam sobre os campos para alterar o estado do objeto.
8
To infinite, and beyond... class BuzzLightYear { public static void main(String[] args){ System.out.println("To infinite..."); System.out.println(“and beyond”); }
9
Em detalhes A classe anterior só declara um método: main é um método especial em Java. É por onde as aplicações começam main tem como parâmetro um array do String, e é passado via linha de comando. System.out.println() : Observar a sintaxe objeto.objeto.método()
10
Mais classes e objetos Declarando mais uma classe: class Point { public double x,y; } Observar o acesso aos campos
11
Criando Objetos Sintaxe: Point lowerLeft = new Point(); O uso de new chama o construtor do objeto. No caso, um construtor default é chamado
12
Alterando campos: Se o acesso é public, pode ser feito diretamente: lowerLeft.x = 5.0; // O objeto precisa lowerLeft.y = 6.0; // ser criado antes Não é recomendado liberar acesso public aos campos dos objetos
13
Controle de Acesso private : Acesso possível apenas de dentro da classe package : Sem declaração explícita, o acesso é permitido a código dentro do mesmo pacote. Não é permitido a classes filhas em outros pacotes. protected : Acesso permitido a código do mesmo pacote e código em classes filhas. public : Acesso permitido de qualquer lugar.
14
Métodos de acesso Recomenda-se o uso de métodos get e set para cada propriedade (onde o acesso é necessário) do objeto. As propriedades podem então ter acesso restrito.
15
Métodos de acesso e construtor O novo Point: class Point { private x, y; public void setX(int num){ x = num; } public int getX(){ return x; } //continua...
16
Métodos de acesso e construtor public Point(int x, int y){ this.x = x; this.y = y; } public Point(){ } // falta método de acesso a y }
17
Conceitos: Controle de acesso Referência através de this Métodos de acesso Construtor não default O construtor deve ser aproveitado para criar um objeto válido
18
Criando subclasses A classe Point original: class Point(){ int x,y; public Point(int x, int y){ this.x = x; this.y = y; } }
19
Criando subclasses A subclasse: class Pixel extends Point { Color color; public Pixel (Color color, int x, int y){ this.color = color; super (x,y); } }
20
Subclasses Observar o uso do método super() super dá uma referência à classe mãe Um objeto da classe filha pode ser usado como objeto da classe mãe Todas as classes descendem da classe Object Não é permitido fazer heranças múltiplas
21
Uma classe só pode herdar uma outra classe
22
Interfaces Úteis para declarar métodos sem suprir implementação Modelo de tratamento de evento usa extensivamente interfaces
23
Interfaces Exemplo: public interface ActionListener{ void actionPerformed(ActionEvent e); } As classes que implementarem ActionListener devem declarar um método actionPerformed() não vazio
24
Packages Evitam conflitos entre nomes e também servem como mecanismo de proteção Exemplo: class Date1 { public static void main(String[] args){ java.util.Date now = new java.util.Date(); System.out.println(now); } }
25
Packages Poderia ter sido usado: import java.util.date; class Date2 { public static void main(String[] args){ Date now = new Date(); System.out.println(now); } }
26
Packages Convenção de nomenclatura: usar o nome do domínio na Internet invertido. Exemplos: package org.omg.CORBA.ORBPackage; domínio: omg.org, pacote: CORBA.ORBPackage package br.usp.lsi.DBConnect; package com.sun.java.swing.plaf.*;
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.