Revisão da linguagem Java
|
|
- Caio Lorenzo Lencastre Molinari
- 8 Há anos
- Visualizações:
Transcrição
1 Revisão da linguagem Java Laboratório de Programação Pedro Vasconcelos, DCC/FCUP Fevereiro 2015 Java TM linguagem de programação de propósito genérico desenvolvida pela Sun (e agora Oracle) suporta tipos estáticos, classes, objetos e concorrência compilada para bytecode duma máquina virtual ( write-once, run anywhere ) sintaxe baseada no C/C++ mais alto nível: modelo de objetos mais simples que o de C++ libertação automática de memória (garbage collection) não suporta aritmética de apontadores tratamento de erros de execução usando exceções Platforma Java Java Standard Edition (JSE): compilador: javac interpretador JVM: java conjunto de biliotecas padrão ferramentas (jar, javadoc, etc.) Java Enterprise Edition (JEE): JSE + componentes extra para aplicações empresariais 1
2 Evolução da linguagem 1996 JDK 1.0 primeira versão 2000 J2SE 1.3 HotspotVM 2005 J2SE 5 tipos genéricos, enumerações, ciclos for implícitos 2011 JSE 7 melhorias na inferência de tipos genéricos 2014 JSE 8 expressões lambda, streams funcionais Em laboratório de programação: vamos usar o JSE 7. Outras linguagens A máquina virtual JVM pode também ser usada para executar outras linguagens; algums exemplos: Scala Clojure Python Ruby NB: não suportadas oficialmente pela Oracle! Princípios da linguagem combina programação imperativa com objetos distingue entre valores básicos e objetos objetos são usados para estruturar programas valores básicos não são objectos execução em máquina virtual (facilita portabilidade) gestão automática de memória: a alocação de objetos é explícita a libertação é implícita (garbage collection) Objetos, classes e packages objetos são agregados de dados e operações associadas 2
3 as classes são moldes para criar objectos objectos da mesma classe suportam um conjunto de operações comuns packages são agregados de classes relacionadas (para facilitar distribuição) NB: em Java, classes também são usadas apenas para agrupar métodos e atributos estáticos. Ficheiros Java O nome do ficheiro duma classe pública deve ser igual ao nome da classe. // num ficheiro Rectangle.java public class Rectangle { NB: pode ter outras classes desde que não sejam públicas. Método main programa completo deve ter uma classe com um método estático main os argumentos de linha de comando são passados como um array de String // num ficheiro Hello.java class Hello { public static void main(string args[]) { System.out.println("Hello world!"); Compilação e execução 3
4 $ javac Hello.java # compilar $ java Hello # executar # alternativa com CLASSPATH $ java -cp ~/myclasses Hello Tipos básicos principais tipo valores literais int inteiros com sinal 32 bits 0, -7, long inteiros com sinal 64 bits L float vírgula-flutuante simples 1.234f, -10.5e6f double vírgula-flutuante dupla -0.25, 1.234d boolean valores lógicos true, false char carateres Unicode 'A', '\u2764' Arrays int[] anarray; // declaração anarray = new int[10]; // inicialização (zeros) // inicialização com constantes int[] anarray = { 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000 ; Arrays (2) os índices começam em zero (como em C/C++) arrays em Java têm associado um atributo length (ao contrário do C/C++) int[] someprimes = { 2, 3, 5, 7, 11, 13 ; for (int i=0; i<someprimes.length; i++) { System.out.println(somePrimes[i]); 4
5 Ciclo for implícito Também podemos percorrer arrays usando um ciclo for com o índice implícito ( for-each ou enhanced for ): int[] someprimes = { 2, 3, 5, 7, 11, 13 ; for (int prime : someprimes) { System.out.println(prime); NB: estes ciclos podem ser usados também noutras coleções (listas, conjuntos, etc.). Arrays (3) não há arrays multi-dimensionais alternativa: arrays de arrays permite dimensões internas não homogéneas String[][] names = { {"Mr. ", "Mrs. ", "Ms. ", {"Smith", "Jones" ; System.out.println(names[0][0] + names[1][0]); // Mr. Smith System.out.println(names[0][2] + names[1][1]); // Ms. Jones Cadeias de texto Cadeias são objetos da classe String. String s1 = "Hello"; // declarar e inicializar String s2 = new String("Hello") // alternativa Podemos obter o comprimento e concatenar. System.out.println(s1.length()); // output: 5 // NB: length() é um método System.out.println(s1 + " world!"); // output: "Hello world!" 5
6 Cadeias de texto (2) não são arrays de carateres mas podemos aceder aos carateres individuais usando charat() String pal = "Dot saw I was Tod"; int len = pal.length(); for (int i = 0; i < len; i++) { System.out.printlen(pal.charAt(i)); Cadeias de texto (3) não podemos modificar o comprimento ou os carateres duma cadeia (é um objeto imutável) mas podemos construir novas cadeias por concatenação alternativa: classe StringBuilder (mais tarde) Programação com objetos definimos classes para novos tipos objetos na definição da classe incluimos: atributos (i.e. valores de estado) métodos (i.e. operações suportadas) Exemplo: contas bancárias class Account { int balance = 0; // balanço (atributo) // depositar uma quantia void deposit(int amount) { balance = balance + amount; // obter o saldo atual int getbalance() { return balance; 6
7 Exemplo de uso class AccountDemo { public static void main(string args[]) { Account acc1 = new Account(); Account acc2 = new Account(); System.out.println(acc1.getBalance()); System.out.println(acc2.getBalance()); acc1.deposit(100); acc2.deposit(50); System.out.println(acc1.getBalance()); System.out.println(acc2.getBalance()); Controlo de acesso Podemos limitar o acesso a métodos ou atributos usando modificadores; os mais comuns são: public visível em todas as classes private vísivel apenas na própria classe Outros: protected visível na classe, sub-classes e no package (sem modificador) visível na classe e no package Contas bancárias (2) class Account { private int balance = 0; // depositar uma quantia public void deposit(int amount) { balance = balance + amount; // obter o saldo atual 7
8 public int getbalance() { return balance; Encapsulamento não podemos modificar balance fora da classe Account podemos apenas usar os métodos públicos // no método main() da classe AccountDemo acc = new Account() acc.balance = acc.balance + 100; // ERRO acc.deposit(100); // OK Construtores devemos definir construtores especializados para inicializar objetos um construtor tem o nome da classe e não tem tipo de retorno pode haver mais do que um construtor (com diferentes números de argumentos ou tipos) class Account { private int balance = 0; // construtor com saldo inicial public Account(int amount) { balance = amount; Métodos e atributos estáticos Por omissão, os atributos e métodos são associados a cada instância particular (i.e. cada objeto). O modificador static permite associar métodos ou atributos à classe em vez das instâncias. 8
9 class Account { // balanço (um por cada conta) private int balance = 0; // taxa de câmbio (todas as contas) static private float rate = ; Herança uma classe pode extender outra por herança se A extende B então A é sub-classe de B uma sub-classe: herda atributos e métodos da classe original pode definir novos métodos ou redefinir métodos existentes (override) class SavingsAccount extends Account { // novos atributos e métodos private float interestrate; A classe Object a classe Objet está no topo da hierarquia todas as outras classes herdam de Object (direta ou indiretamente) se não declaramos herança explícita para um nova classe, esta herda de Object: class Account { é equivalente a class Account extends Object { 9
10 Métodos da classe Object Alguns métodos definidos em Object: Object clone() criar uma cópia do objeto boolean equals(object other) comparar igualdade com outro objeto String tostring() converte o objeto numa string int hashcode() retornar o código de hash inteiro NB: por vezes é necessário re-definir estes métodos nas sub-classes. Cuidados com herança O (ab)uso da herança é desaconselhado: implica perda de flexibilidade porque compromete o programa com implementações específicas aumenta o acouplamento entre partes distintas do código uma alteração numa classe pode ter efeitos imprevistos noutras a integridade da relação de herança é bastante subtil: wiki/faq/proper-inheritance#circle-ellipse Interfaces especificações de um conjunto métodos relacionados representam um contrato entre uma classe e o mundo exterior uma interface pode ser implementada por várias classes uma classe pode implementar várias interfaces Exemplo interface Sizeable { float getarea(); // calcular área class Rect implements Sizeable { private float width, height; public float getarea() { 10
11 return width*height; Exemplo (cont.) class Circle implements Sizeable { private float radius; public float getarea() { return Math.PI*Math.pow(radius,2.0); Classes vs. interfaces classes podem conter atributos e métodos interfaces só podem declarar métodos (sem implementação) ou constantes uma classe só pode extender uma outra classe uma interface pode extender múltiplas interfaces public interface GroupedInterface extends Interface1, Interface2, Interface3 { // declarações de constantes // e assinaturas de métodos Enumerações tipos enum permitem definir valores constantes dum conjunto finito de alternativas o compilador verifica que valores dum tipo enum são corretamente atribuidos podem também ser usados em instruções switch public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY 11
12 Exemplo public void tellitlikeitis(day day) { switch (day) { case MONDAY: System.out.println("Mondays are bad."); break; case SATURDAY: case SUNDAY: System.out.println("Weekends are best."); break; default: System.out.println("Midweek days are so-so."); break; Outros cuidados valores null comparações de igualdade anotações de override implementações do método equals Valores null um array ou objeto sem inicialização toma o valor null podemos também atribuir explicitamente null null representa a ausência de um objeto invocar métodos ou atributos de null causa um erro: NullPointerException String s1; // inicializada com null System.out.println(s1.length()); // NullPointerException Comparações de igualdade O operador == compara: igualdade de valores para tipos básicos (int, char, etc.) igualdade de referências para arrays e objetos 12
13 int x = 1+2+3; int y = 2*3; // x==y dá true String s1 = "Hello " + "world"; String s2 = "He" + "llo world"; // s1 == s2 dá false Comparações de igualdade (2) Para comparar igualdade de valores entre objetos devemos usar o método equals: String s1 = "Hello " + "world"; String s2 = "He" + "llo world"; boolean r1 = s1.equals(s2); // true boolean r2 = s2.equals(s1); // true Igualdade entre Arrays Arrays são objetos da classe Array a igualdade está definida em java.util.arrays (não é o método equals) import java.util.arrays; int a[] = {1, 2, 3 ; int b[] = {1, 2, 3 ; boolean r1 = a == b; boolean r2 = a.equals(b); boolean r3 = Arrays.equals(a,b); // false // false // true Anotação de Override as anotações indicam meta-informação para o compilador, IDEs e outras ferramentas quando queremos redefinir um método numa sub-classe devemos anotá-lo 13
14 permite ao compilador/ide avisar se nos enganarmos no nome do método ou tipos de argumentos class Foo public String tostring() { // redefinir um método herdado de Object Implementação de equals o método equals definido em Object compara as referências dos objetos (como o operador ==) para comparar valores devemos redefinir este método possiveis armadilhas: assinatura de tipos demasiado restrita definir equals dependendo de atributos mutáveis definir equals sem respeitar uma relação de equivalência devemos também redefinir hashcode Mais informação: How to Write an Equality Method in Java Exemplo: rectângulos class Rect { private int width, height; // largura, public boolean equals(object other) { if (other == null!(other instanceof Rect)) return false; Rect that = (Rect)other; // coerção return (this.width == that.width && this.height == that.height); 14
15 Redefinir também hashcode Para usar Rect em coleções baseadas em funções de hash (e.g. HashMap ou HashSet) devemos também redefinir hashcode. class Rect public int hashcode() { // produtos com um primo return (41 * (41 + width) + height); Os IDEs podem gerar automaticamente métodos equals e hashcode mas nem sempre corretos! 15
Programação por Objectos. Java
Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:
Leia maisMódulo 06 Desenho de Classes
Módulo 06 Desenho de Classes Última Atualização: 13/06/2010 1 Objetivos Definir os conceitos de herança, polimorfismo, sobrecarga (overloading), sobreescrita(overriding) e invocação virtual de métodos.
Leia maisFBV - Linguagem de Programação II. Um pouco sobre Java
FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base
Leia maisUniversidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática
Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]
Leia maisTécnicas de Programação II
Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.
Leia maisModulo IIa Extra: Object
Modulo IIa Extra: Object Professor Ismael H F Santos ismael@tecgraf.puc-rio.br April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Bibliografia Linguagem de Programação JAVA Ismael H. F. Santos,
Leia maisCURSO DE PROGRAMAÇÃO EM JAVA
CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro
Leia maisPADI 2015/16. Aula 1 Introdução à Plataforma.NET
PADI 2015/16 Aula 1 Introdução à Plataforma.NET 1 Sumário 1. Framework.NET Arquitectura 2. Linguagem C# 2.0 Sintaxe C# vs. Java vs. C++ 3. IDE: MS Visual Studio 2005 ou superior Ferramentas Console/Win
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Leia maisCurso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais
Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais
Leia maisCurso Adonai QUESTÕES Disciplina Linguagem JAVA
1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String
Leia maisIntrodução à linguagem
A Tecnologia Java 1 Introdução à linguagem Origens do JAVA Projecto Green, programação para a electrónica de Consumo (Dezembro 1990): Pouca memória disponível Processadores fracos Arquitecturas muito diferentes
Leia maisJava 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Leia mais2 Orientação a objetos na prática
2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos
Leia maisReuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Leia mais3 Classes e instanciação de objectos (em Java)
3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem
Leia maisProgramação Na Web. Linguagem Java Parte II. break com o nome do bloco. Sintaxe. Nome do bloco. Termina o bloco. António Gonçalves ...
Programação Na Web Linguagem Java Parte II Sintaxe António Gonçalves break com o nome do bloco Nome do bloco Termina o bloco class class Matrix Matrix { private private int[][] int[][] mat; mat; public
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Leia maisLista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,
Leia maisJava Básico. Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp
Java Básico Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp Classes Abstratas construção de uma classe abstrata construção de classes derivadas Classes e Herança Uma classe define
Leia maisA Linguagem Java. Alberto Costa Neto DComp - UFS
A Linguagem Java Alberto Costa Neto DComp - UFS 1 Roteiro Comentários Variáveis Tipos Primitivos de Dados Casting Comandos de Entrada e Saída Operadores Constantes 2 Comentários /** Classe para impressão
Leia maisCapítulo 4. Packages e interfaces
Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias
Leia maisAULA DE JAVA 1 - CONCEITOS BÁSICOS
AULA DE JAVA 1 - CONCEITOS BÁSICOS DAS 5316 Integração de Sistemas Corporativos Roque Oliveira Bezerra, M. Eng roque@das.ufsc.br Prof. Ricardo J. Rabelo ROTEIRO Introdução Fases de um programa Java Strings
Leia maisParadigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33
PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Engenharia da Computação Professor: Rosalvo Ferreira de Oliveira Neto Dados Pessoais Rosalvo Ferreira de Oliveira Neto MSc. em ciência da computação (UFPE) rosalvo.oliveira@univasf.edu.br
Leia maisJava. Marcio de Carvalho Victorino www.dominandoti.eng.br
Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a
Leia maisUnidade IV: Ponteiros, Referências e Arrays
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Leia maisESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA 0 Iniciar o ambiente de desenvolvimento integrado
Leia maisPOO Programação Orientada a Objetos. Classes em Java
+ POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 1: Introdução MEEC@IST Java 1/27 História versões (1) [1995] Versão 1.0, denominada Java Development Kit (JDK) 212 classes em 8 pacotes Lento, muitos bugs, mas com Applets
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/52 Herança revisão A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode
Leia maisLinguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Leia mais7 RTTI e Interfaces. Desenvolvimento OO com Java. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.
Desenvolvimento OO com Java 7 RTTI e Interfaces Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do
Leia maisESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado
Leia maisBCC221 Programação Orientada a Objetos. Prof. Marco Antonio M. Carvalho 2014/2
BCC221 Programação Orientada a Objetos Prof. Marco Antonio M. Carvalho 2014/2 Site da disciplina: http://www.decom.ufop.br/marco/ Moodle: www.decom.ufop.br/moodle Lista de e- mails: bcc221- decom@googlegroups.com
Leia maisBSI UFRPE Prof. Gustavo Callou gcallou@gmail.com
BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com HelloWorld.java: public class HelloWorld { public static void main (String[] args) { System.out.println( Hello, World ); } } Identificadores são usados
Leia maisAnálise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
Leia maisCONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs
Leia maisAlgoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31
APROG Algoritmia e Programação Linguagem JAVA Básico Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 Linguagem Java Estrutura de um Programa Geral Básica Estruturas de Dados Variáveis Constantes Tipos de Dados
Leia mais15-09-2009. Membros de classe e de instância. PARTE III: Java e OO - detalhes. Exemplo 1: método. Exercício. Exemplo 1 corrigido
PARTE III: Java e OO - detalhes Membros de classe e instâncias Pacotes Visibilidade Classes aninhadas Membros de classe e de instância De classe Static Método não necessita de objeto para ser chamado.
Leia maisSintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.
Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java
Leia maisJava - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br
Java - Introdução Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda O que é Java? Sun / Oracle. IDE - NetBeans. Linguagem Java; Maquina Virtual; Atividade Prática. Identificando Elementos
Leia maisLaboratório de Programação. Aula 13 Java 5COP088. Aula 13 Genéricos e Conjuntos Java Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr barbon@uel.
5COP088 Laboratório de Programação Aula 13 Genéricos e Conjuntos Java Prof. Dr. Sylvio Barbon Junior 1 Sumário: 1) Métodos hashcode(), equals() e tostring(); 2) Conjuntos; 3) Genéricos; 4) Resumo. 2 1)
Leia maisAula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Leia maisJava Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da
Java Laboratório Aula 1 Programação orientada a objetos Profa. Renata e Cristiane Introdução a Plataforma Java O que é Java? Tecnologia Linguagem de Programação Ambiente de Execução (JVM) Tudo isso é a
Leia maisOrientação a Objetos em Java. Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Orientação a Objetos em Java Leonardo Gresta Paulino Murta leomurta@ic.uff.br Agenda Introdução; Orientação a Objetos; Orientação a Objetos em Java; Leonardo Murta Orientação a Objetos em Java 2 Agosto/2007
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução ao Paradigma OO
Leia maisNoções sobre Objetos e Classes
Noções sobre Objetos e Classes Prof. Marcelo Cohen 1. Elementos de programação Revisão de programação variáveis, tipos de dados expressões e operadores cadeias de caracteres escopo de variáveis Revisão
Leia maisLinguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br
Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim
Leia maisUniversidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática
Programação Orientada a Objectos - 28/29; P. Prata, P. Fazendeiro 2 A tecnologia Java Uma ideia base da linguagem JAVA é a de que um programa em JAVA deve poder ser executado em qualquer tipo de computador
Leia maisLinguagem de Programação III
Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado
Leia maisOrientação a Objetos com Java
Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;
Leia maisGuia de Fatores de Qualidade de OO e Java
Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.
Leia maisSobre o Professor Dr. Sylvio Barbon Junior
5COP088 Laboratório de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sobre o Professor Dr. Sylvio Barbon Junior Formação: Ciência e Engenharia da Computação (2005
Leia maisLINGUAGEM DE PROGRAMAÇÃO JAVA
LINGUAGEM DE PROGRAMAÇÃO JAVA Curso de Especialização em Tecnologia Java UTFPR Capítulo 1 Parte 1 Introdução à tecnologia Java Ambiente de desenvolvimento Java Introdução à Tecnologia Java O que é Java?
Leia maisClasses, Superclasses e Subclasses
Herança Herança A idéia é criar novas Classes construindo-as sobre outras existentes Ao herdar de uma classe, reusamos (herdamos) seus métodos E podemos adicionar novos métodos e campos para adaptar a
Leia maisJava para Desktop. Introdução à Plataforma Java JSE
Introdução à Plataforma Java JSE Aécio Costa aeciovc@gmail.com @aeciovc Objetivos Sintaxe Java; Programação Orientada à Objetos; Interfaces Gráficas Swing; JDBC; Gerador de Relatórios IReport; Projeto
Leia maisMódulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010
Módulo 02 Programação Orientada a Objetos Última atualização: 07/06/2010 1 Objetivos Definir conceitos de orientação a objetos: o abstração, encapsulamento, pacotes. Discutir reutilização de código em
Leia maisCapítulo 3. Programação por objectos em Java
Capítulo 3. Programação por objectos em Java 1/46 Índice Indice 3.1 - Qualificadores de visualização 3.2 - Classe 3.3 - Objecto 3.4 - Métodos 3.5 - Herança 3.6 - Reescrita de métodos 3.7 - Classes abstractas
Leia maisMódulo 07 Características Avançadas de Classes
Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos
Leia maisLição 9 Trabalhando com bibliotecas de classes
Lição 9 Trabalhando com bibliotecas de classes Introdução à Programação I 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Explicar o que é programação orientada a objetos e alguns de seus
Leia maisProgramação Orientada a Objetos em java. Polimorfismo
Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa
Leia maisPROGRAMAÇÃO JAVA. Parte 1
PROGRAMAÇÃO JAVA Parte 1 O que é um programa? Um algoritmo (sequência de operações elementares - instruções) convertido para uma linguagem que possa ser executada por um computador Programa = Algoritmos
Leia maisJAVA. Fabrício de Sousa fabbricio7@yahoo.com.br
JAVA Fabrício de Sousa fabbricio7@yahoo.com.br Agenda 2 Características Ambientes de Desenvolvimento Sintaxe Comentários Tipos de dados primitivos Caracteres especiais Variáveis Operadores Aritméticos
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisUm objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;
um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,
Leia maisTabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação
Java Tabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação 1 Tabelas para quê? As tabelas são utilizadas quando se pretende armazenar e manipular um grande número de
Leia maisConceito de classe em C++
Introdução à Programação com Classes em C++ Ana Paula Rocha, Luís Paulo Reis, João Pascoal Faria FEUP - MIEEC Programação 2-2008/2009 Conceito de classe em C++ Classe em sentido lato: tipo de dados definido
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Classes abstratas São classes que não podem ser instanciadas, porque representam
Leia maisRelacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos
Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos
Leia maisAula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/
Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.
Leia maisUtilizem a classe Aula.java da aula passada:
Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Utilizem a classe Aula.java da aula passada: public class Aula { public static void main(string[]
Leia maisAula 3 Objeto atual com referencia THIS e Classes com Herança
Aula 3 Objeto atual com referencia THIS e Classes com Herança Profº Msc. Alexsandro M. Carneiro Engenharia de Computação Tec. Análise e Des. De Sistemas Tópicos Abordados Controlee de Acesso Herança Definição:
Leia maisUniversidade Federal de Uberlândia
Universidade Federal de Uberlândia Programação Orientada a Objetos I Introdução a Java Sintaxe básica OO Prof. Fabiano Azevedo Dorça Em Java, cada classe dá origem a um arquivo.java contendo o código fonte.
Leia maisProgramação Orientada a Objetos. Encapsulamento
Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências
Leia maisEncapsulamento de Dados
Encapsulamento de Dados Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Modificadores de Visibilidade Especificam
Leia maisProgramação com Acesso a BD. Programação com OO Acesso em Java
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Leia maisLinguagem de Programação III
Clique para editar o estilo do subtítulo mestre Linguagem de Programação III Histórico Encapsulamento Tratamento de classes e objetos Herança Polimorfismo Comparação com Java Histórico Desenvolvido por
Leia maispublic Agenda() { compromissos = null; } public int getnumerodecompromissos() { if (compromissos==null) return 0; else return compromissos.
import java.util.scanner; class Data... class Compromisso... public class Agenda private Compromisso[] compromissos; private Compromisso[] realoquecompromissos (Compromisso[] vetor, int tamanhodesejado)
Leia maisCapítulo 2. Fundamentos de Java
Capítulo 2. Fundamentos de Java 1/52 Índice 2.1 - Variáveis Tipos Escopo Inicialização Casting Literais 2.2 - Operadores Aritméticos Relacionais Bit a Bit De atribuição 2.3 - Expressões, statements e blocos
Leia maisProgramação online em Java
Universidade Federal do ABC Disciplina: Processamento da Informação Assunto: Programação online em Java Programação online em Java Conteúdo Conteúdo...1 Introdução... 1 1.1.Programas necessários... 1 1.2.Visão
Leia maisIntrodução à orientação a objetos. João Tito Almeida Vianna 25/05/2013
Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação
Leia maisOrganização de programas em Java. Vanessa Braganholo vanessa@ic.uff.br
Organização de programas em Java Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Java! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem
Leia mais5 Caso de estudo O cartão fidelidade
5 Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante
Leia maisProgramação com Objectos. Processamento de Dados I. 4. Classes Abstractas
Programação com Objectos Processamento de Dados I 4. Classes Abstractas 1 Conceito de classe abstracta Declaração de uma classe abstracta Implicações e características das classes abstractas Utilização
Leia maisSeminário - C# DSO II. Desenvolvimento de Sistemas Orientados a Objetos 2. Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo
Seminário - C# DSO II Desenvolvimento de Sistemas Orientados a Objetos 2 Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo Roteiro Breve Histórico Plataforma.NET Características da Linguagem Sintaxe Versões
Leia maisJava 1 visão geral. Vitor Vaz da Silva
Java 1 visão geral Vitor Vaz da Silva Introdução 1991 Um grupo de projectistas da Sun Green Team tenta criar uma nova geração de computadores portáteis inteligentes e com grande capacidade de comunicação.
Leia maisIntrodução a POO. Introdução a Linguagem C++ e POO
Introdução a POO Marcio Santi Linguagem C++ Introdução a Linguagem C++ e POO Programação Orientada a Objetos (POO) e C++ Recursos C++ não relacionados às classes Incompatibilidades entre C e C++ Classes
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Introdução GUI Classes abstratas São classes que não podem ser instanciadas,
Leia maisComo o FIT funciona. FIT: Framework for Integrated Tests FIT. http://fit.c2.com. Dados de testes. Programa. Fixtures. classes. Resultados de testes
Como o FIT funciona FIT: Framework for Integrated Tests http://fit.c2.com Dados de testes Fixtures Programa classes FIT Resultados de testes Universidade Portucalense Engenharia de Software ES04 2014-2015
Leia maisSintaxe Básica de Java Parte 1
Sintaxe Básica de Java Parte 1 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marcioubeno.com Fonte: Material da Profª Karina Oliveira Estrutura de Programa Um programa
Leia maisO programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.
7. Carregando e mostrando imagens locais Esta aula complementa os estudos de programação de interfaces gráficas em Java mostrando como podemos carregar imagens de arquivos locais ou da Internet para uso
Leia maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisEspecialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares
Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e
Leia maisComputação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores
Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores 1 Exercícios Exercício 1: Construtores e Testes Analise a classe Conta.java, mostrada na
Leia maisLinguagem de Programação Introdução a Linguagem Java
Linguagem de Programação Introdução a Linguagem Java Rafael Silva Guimarães Instituto Federal do Espírito Santo Campus Cachoeiro de Itapemirim Definição A linguagem Java foi desenvolvida pela Sun Microsystems,
Leia maisPara desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.
1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto
Leia maisinsfcanceof new public switch transient while byte continue extends for int null
Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public
Leia mais