A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Java Kickstart, day 2 Semelhanças com linguagem C.

Apresentações semelhantes


Apresentação em tema: "Java Kickstart, day 2 Semelhanças com linguagem C."— Transcrição da apresentação:

1

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.*;


Carregar ppt "Java Kickstart, day 2 Semelhanças com linguagem C."

Apresentações semelhantes


Anúncios Google