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

Slides:



Advertisements
Apresentações semelhantes
|Introdução a Java para programadores Telis. Jogo de Dados simples O jogo é jogado por dois jogadores. Cada jogador faz sua jogada (lança um dado), e.
Advertisements

JAVA Orientação a Objetos
Programação Orientada a Objetos*
Modificadores Marco Antonio, Arquiteto de Software – TJDF Atualizado em Novembro/2008.
Collections Marco Antonio, Arquiteto de Software – TJDF Atualizado Dezembro/2008.
Modificadores Marco Antonio. Introdução Em todas as linguagens de programação o acesso a classes/métodos deve seguir algumas regras.
Java: Pacotes e Modificadores de Visibilidade
Orientação a Objetos: Modificador Final para Métodos e Classes
Herança, sobrecarga e ligação dinâmica zHerança zReferência super zSobrecarga de métodos zSobreposição zLigação dinâmica de métodos zfinal.
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Generalização, Especialização e Conceitos
Iniciação ao Java – Márcio F. Campos
Walfredo Cirne walfredo.dsc.ufpb.br
Polimorfismo e Classes Abstratas Profa
Programação Concorrente
Wagner Santos C. de Jesus
Capítulo 13 Pacotes. 2 Capítulo 13 – Pacotes Pacotes Pacote Cláusula package Cláusula import Executando uma classe de pacote Modificadores de acesso.
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
Classes & Objectos em JAVA5
Métodos Programação II
Clique para editar o estilo do subtítulo mestre Desenvolvimento web com Java JAVA 5 – Declarações e Controles de Acesso.
Estrutura de Dados em Java
CRIANDO OBJETOS EM JAVA
Concorrência em Java Threads em Java.
Introdução a programação (if669cc)
Tipos Agregados Homogêneos e Listas
Programação Orientada a Objetos com Java
JAVA Orientação a Objetos
Interfaces.
Atributos, Encapsulamento e Interface em Java
Programação I Aula 2 (Métodos)
Classes, Objetos, Atributos e Métodos JAVA
Orientação a Objetos e Java Graduação em Ciência da Computação
Professora Lucélia Oliveira
Paulo Borba Centro de Informática Universidade Federal de Pernambuco
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng. da Computação IF62C - Fundamentos de Programação Semana 12 – Overloading X Overriding Prof.a.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
LPII Professora Lucélia. Pacotes Um pacote em Java é um diretório onde ficam armazenadas uma ou mais classes. Geralmente as classes com a mesma afinidade.
Wagner Santos C. de Jesus
Programação Orientada a Objetos - Java
Implementação Orientada a Objetos – Aula 03
Programação Orientada a Objetos - Java Professor: Jean Carlo Mendes.
Programação Orientada a Objetos - Java
Programação Orientada à Objetos
Curso de Aprendizado Industrial Desenvolvedor WEB
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Prof. Gilberto Irajá Müller
Introdução às Java Threads
Orientação a Objetos usando Java
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Aula Prática 4 Monitoria IP/CC (~if669).
Prof.: Bruno Rafael de Oliveira Rodrigues. Construtor é bloco declarado que é chamado no momento em que o Objeto é criado (instanciado). Todas as classes.
Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes
Polimorfismo.
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Classes Abstratas e Interface
Capítulo 1. Classes internas  Classe interna  Instância da classe interna  Referências na classe interna  Modificadores de membros  Classe interna.
M ÉTODOS DA C LASSE S TRING. FUNÇÕES COM STRING Uma string é um tipo texto que corresponde à união de um conjunto de caracteres. Em Java, as strings são.
Herança e Arquitetura em camadas
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
Herança Modelagem e Programação Orientada a Objetos
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Bruno Inojosa MCP .NET Framework
Modificadores Programação II.
Herança.
Classes abstratas São classes das quais não se pode instanciar objetos. São classes das quais não se pode instanciar objetos. Seu objetivo é ser herdada.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Java Kickstart, day 2

Semelhanças com linguagem C

Strings Criação: String name = “Bond”; ou String name = new String(“Bond”); Manipulação name = + “,James Bond”;

Strings Objetos podem ser transformados em String com a invocação do toString(), quando necessário: int num = 15; System.out.println(“Valor” + 15);

Programas são feitos de classes

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.

To infinite, and beyond... class BuzzLightYear { public static void main(String[] args){ System.out.println("To infinite..."); System.out.println(“and beyond”); }

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()

Mais classes e objetos Declarando mais uma classe: class Point { public double x,y; } Observar o acesso aos campos

Criando Objetos Sintaxe: Point lowerLeft = new Point(); O uso de new chama o construtor do objeto. No caso, um construtor default é chamado

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

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.

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.

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

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 }

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

Criando subclasses A classe Point original: class Point(){ int x,y; public Point(int x, int y){ this.x = x; this.y = y; } }

Criando subclasses A subclasse: class Pixel extends Point { Color color; public Pixel (Color color, int x, int y){ this.color = color; super (x,y); } }

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

Uma classe só pode herdar uma outra classe

Interfaces Úteis para declarar métodos sem suprir implementação Modelo de tratamento de evento usa extensivamente interfaces

Interfaces Exemplo: public interface ActionListener{ void actionPerformed(ActionEvent e); } As classes que implementarem ActionListener devem declarar um método actionPerformed() não vazio

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); } }

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); } }

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