Introdução. LP OO desenvolvida pela Sun no início da década de 90 com sintaxe semelhente a C\C++. C C++.

Tamanho: px
Começar a partir da página:

Download "Introdução. LP OO desenvolvida pela Sun no início da década de 90 com sintaxe semelhente a C\C++. C C++."

Transcrição

1 Java Parte I mleal@inf.puc-rio.br 1 Introdução LP OO desenvolvida pela Sun no início da década de 90 com sintaxe semelhente a C\C++. C C++. Todos os programas Java são compilados e interpretados. O compilador transforma o programa em um forma intermediária independente da plataforma (bytecodes). O interpretador (JVM) testa e executa os bytecodes. mleal@inf.puc-rio.br 2

2 Introdução Para cada plataforma é necessário uma JVM específica. Entretanto, um mesmo programa pode ser executado em qualquer plataforma. 3 Classes em Java Em Java, a declaração de novas classes é feita através da construção class. class Circulo { int x,y; float raio; mleal@inf.puc-rio.br 4

3 Instanciação Uma vez definida uma classe, uma nova instância (objeto) pode ser criada através do comando new. Circulo c = new Circulo(); Os atributos desta classe podem ser manipulados diretamente: c.x = 5; c.y = 5; c.raio = 3.5; mleal@inf.puc-rio.br 5 Métodos Além de atributos, uma classe deve declarar os métodos que irá disponibilizar. class Circulo { int x,y; float raio; void setraio(float r){ raio = r; float getarea(){ return 3,14*raio*raio; void move (int dx, int dy){ x = x+dx; y = y+dy; mleal@inf.puc-rio.br 6

4 Declaração de Variáveis e Escopo Java permite que uma variável seja declarada em qualquer lugar dentro de um método. O escopo da variável se estende do momento da sua declaração até o fim do bloco no qual foi definido. int fatorial (int n){ if n <= 1 then return 1 else { int f = n*fatorial(n-1) return f escopo de f mleal@inf.puc-rio.br 7 Envio de Mensagens O envio de uma mensagem para um objeto é feito através da invocação de métodos deste objeto com a eventual passagem de parâmetros. Circulo c = new Circulo(); c.setraio(3); float a = c.getarea(); mleal@inf.puc-rio.br 8

5 Referências Java adota um modelo de valor por referência. Com exceção de tipos primitivos, a atribuição entre duas variáveis cria uma nova referência Circulo c1 = new Circulo(); Circulo c2 = c1; c1 e c2 contém m referências para o mesmo objeto Circulo mleal@inf.puc-rio.br 9 this Dentro de um método, o objeto pode precisar de sua própria referência. A palavra reservada this denota uma referência ao próprio objeto. class Circulo { int x,y; void setxy (int x, int y){ this.x = x; this.y = x; mleal@inf.puc-rio.br 10

6 Inicialização de Objetos Em várias circunstâncias é interessante inicializar um objeto com valores. Por exemplo, poderíamos querer que todo Círculo recém criado estivesse em (0,0). Esse tipo de inicialização pode ser feito especificando-se se valores iniciais para os atributos: class Circulo { int x = 0; int y = 0; mleal@inf.puc-rio.br 11 Construtores Ao invés de criar pontos sempre em (0,0), poderíamos querer especificar a posição do ponto no momento de sua criação. O uso de construtores permite isso. Construtores são mais genéricos do que simples atribuições de valores iniciais aos campos: podem receber parâmetros e fazer um processamento qualquer. mleal@inf.puc-rio.br 12

7 Exemplo class Circulo { int x,y; float raio; Circulo (int x, int y, float Raio){ Circulo c1 = new Circulo(3,3,5.5); Circulo c2 = new Circulo(0,0,4); Neste exemplo para criar um Circulo é sempre necessário especificar sua posição e o seu raio. mleal@inf.puc-rio.br 13 Construtor Padrão Quando não especificamos nenhum construtor a linguagem Java declara implicitamente um construtor padrão vazio, que não recebe parâmetros. Se declararmos algum construtor, esse construtor padrão não será mais declarado. No exemplo anterior: Circulo c3 = new Circulo(); erro!! mleal@inf.puc-rio.br 14

8 Sobrecarga Java permite a sobrecarga de métodos, inclusive de construtores. class Point { int x, y; Point() { this(0,0); Point(int x, int y) { this.x = x; this.y = y; mleal@inf.puc-rio.br 15 Gerência de Memória Java possui uma gerência automática de memória com coleta de lixo. Quando um objeto não é mais referenciado pelo programa ele é automaticamente coletado (destruído) e a memória correspondente é desalocada. Qualquer objeto Java é criado sempre na heap. Apenas tipos primitivos são alocados na pilha ou, eventualmente, na memória estática. mleal@inf.puc-rio.br 16

9 Destrutores Quando um objeto Java vai ser coletado, ele tem seu método finalize chamado. Esse método deve efetuar qualquer procedimento de finalização que seja necessário antes da coleta do objeto. Como Java possui gerenciamento automático de memória, a utilização de destrutores não é muito comum. mleal@inf.puc-rio.br 17 Encapsulamento A definição da interface de objetos é feita através dos modificadores public e private. Métodos e atributos declarados como public são visíveis para outros objetos Java. Métodos e atributos declarados como private só podem ser acessados dentro do próprio objeto. mleal@inf.puc-rio.br 18

10 Exemplo interface class Circulo { private int x,y; não são acessíveis por private float raio; outros objetos public void setraio(float r){ raio = r; public float getarea(){ return 3,14*raio*raio; public void move (int dx, int dy){ x = x+dx; y = y+dy; mleal@inf.puc-rio.br 19 Atributos de Classes e Métodos Estáticos Classes podem declarar membros (atributos e métodos) que sejam comuns a todas as instâncias, ou seja, membros compartilhados por todos os objetos da classe. Este mecanismo equivale a definição de variáveis e funções globais comuns em LPs não OO. Java suporta a definição de membros de classe através do qualificador static. mleal@inf.puc-rio.br 20

11 Exemplo public class Math{ static double pi = 3.14; static double cos(){ public class Produto{ static int produzidos = 0; static float getproducao(){ return produzidos; public Produto(){ ++produzidos; mleal@inf.puc-rio.br 21 Acesso a Membros de Classe Não é necessário que uma instância da classe exista pra que membros (atributos e métodos) da classe possam ser acessados. O acesso a membros de classe em Java é feito diretamente através do nome da classe. float perimetro = 2*Math.pi*r; float x = Math.cos(2.3); int n = Produto.getProducao(); mleal@inf.puc-rio.br 22

12 Tipos Básicos de Java boolean char byte short int long float double true ou false caracter UNICODE (16 bits) número inteiro com sinal (8 bits) número inteiro com sinal (16 bits) número inteiro com sinal (32 bits) número inteiro com sinal (64 bits) número em ponto-flutuante (32 bits) número em ponto-flutuante (64 bits) 23 Strings e Arrays Em Java strings e arrays são definidos através de classes específicas. Exemplos: String texto = Exemplo ; int[] lista = {1, 2, 3, 4, 5; String[] nomes = { João, Maria ; System.out..out.println(nomes[0]); // Imprime João. mleal@inf.puc-rio.br 24

13 Operadores Operadores Aritméticos Descrição Operador Adição + Subtração - Multiplicação * Divisão / Resto divisão inteiro % Menos unário - mleal@inf.puc-rio.br 25 Operadores Operadores Relacionais Descrição Operador Igual == Diferente!= Menor < Menor ou igual <= Maior > Maior ou Igual >= Operadores lógicos and (&&( &&), or ( ( ) ) e not (!)( mleal@inf.puc-rio.br 26

14 if-else Controle de Fluxo switch-case case-default while do-while for break return 27 if-else float m; if (a>0 && b>0) m = a*b; else { System.out.println( Erro ); m = 0; mleal@inf.puc-rio.br 28

15 switch-case case-default int i = f(); switch (i){ case -1: break; case 0: break; default: mleal@inf.puc-rio.br 29 int i = 0; while (i<10){ i++; while System.out..out.println(i); mleal@inf.puc-rio.br 30

16 do-while int i = 0; do{ i++; System.out..out.println(i); while (i<10); mleal@inf.puc-rio.br 31 for for (int( i=1; i<=10; i++) System.out..out.println(i); mleal@inf.puc-rio.br 32

17 break int i = 0; while (true){ if (i==10) break; i++; System.out..out.println(i); mleal@inf.puc-rio.br 33 label início: for (int( i=0; i<10; i++) for (int( j=0; j<10; j++) { if (v[i][j] < 0) break início; mleal@inf.puc-rio.br 34

18 Herança em Java Java suporta o conceito de herança simples, mas não o de herança múltipla na forma tradicional. Pode-se declarar uma subclasse através da palavra reservada extends: public class Pixel extends Point { int color; public Pixel(int x, int y, int c) { super(x, y); color = c; mleal@inf.puc-rio.br 35 super Uma subclasse pode acessar o construtor da superclasse através da chamada super(). Caso a subclasse não invoque explicitamente o construtor da superclasse, Java fará isso automaticamente. Entretanto caso a superclasse não possua um construtor padrão, a subclasse necessariamente deverá fazer uma invocação explícita de um construtor qualquer da superclasse. mleal@inf.puc-rio.br 36

19 Polimorfismo Em Java o comportamento padrão dos objetos é polimórfico, e a ligação de métodos ocorre de forma dinâmica (late binding). Conforme veremos adiante, é possível modificar este comportamento quando necessário. mleal@inf.puc-rio.br 37 public class Point { public void print() { System.out.println( Point ( +x+, +y+ ) ); public class Pixel extends Point { public void print() { System.out.println( Pixel ( +x+, +y+, +color+ ) ); Point pt = new Point(); // ponto em (0,0) Point px = new Pixel(0,0,0); // pixel em (0,0) pt.print(); // Imprime: Point (0,0) px.print(); // Imprime: Pixel (0,0,0) mleal@inf.puc-rio.br 38

20 Valores Constantes Constantes em Java são declaradas através da palavra reservada final. final força uma ligação estática entre um valor e uma variável. class Math { final float pi = 3.14; mleal@inf.puc-rio.br 39 final e Polimorfismo Por razões de eficiência, Java permite a especificação de métodos cuja ligação deve ser sempre estática. Esta especificação é feita através da declaração de um método como final. public class A { public final int f() { mleal@inf.puc-rio.br 40

21 Type Casting O mecanismo de typecasting é importante em LPs OO para acessar os métodos específicos de objetos polimórficos: Point pt = new Pixel(0,0,1); Pixel px = (Pixel)pt; pt = new Point(); px = (Pixel)pt; ERRO! pt agora contém um ponto. pt = new Pixel(0,0,0); px = pt; ERRO! pt não é sempre um pixel. mleal@inf.puc-rio.br 41 instanceof Permite verificar em tempo de execução a classe real de um objeto. Exemplo: if (pt instanceof Pixel) { Pixel px = (Pixel)pt; mleal@inf.puc-rio.br 42

22 Classes Abstratas Java suporta o conceito de métodos e classes abstratas através da palavra reservada abstract. Uma classe pode ser declarada abstrata sem conter nenhum método abstrato. Uma classe que contenha ao menos um método abstrato deve sempre ser declarada abstrata. mleal@inf.puc-rio.br 43 Exemplo de Classe Abstrata public abstract class Instrumento { public String nome; public abstract void tocar(); public abstract void afinar(int ajuste); public void getnome() { System.out.println(nome); mleal@inf.puc-rio.br 44

23 Interfaces Java não suporta o mecanismo de herança múltipla. Uma subclasse pode estender apenas uma única superclasse. Entretanto Java permite que uma subclasse implemente várias interfaces. Interfaces Java podem ser entendidas como classes abstratas puras, ou seja, classes que contém apenas métodos abstratos. Para herdar de uma interface uma subclasse deve ser declarada com a paravra reservada implements. mleal@inf.puc-rio.br 45 Membros de Interfaces Uma vez que uma interface não possui implementação, devemos notar que: seus campos devem ser públicos, estáticos e constantes; seus métodos devem ser públicos e abstratos. Como esses qualificadores são fixos, não precisamos declará-los. los. mleal@inf.puc-rio.br 46

24 Exemplo interface Instrumento { String marca = Yamaha ; static e final void tocar(); abstract e public void afinar(int ajuste); class Tambor implements Instrumento{ void tocar(){ void afinar(int ajuste){ mleal@inf.puc-rio.br 47 Interfaces Apesar de uma interface não ser uma classe, podemos declarar variáveis como sendo de um tipo de interface específico. Instrumento i = new Tambor(); A partir daí aplicam-se todas as regras de polimorfismo e o mecanismo de typecast padrão. mleal@inf.puc-rio.br 48

25 Interfaces Uma classe pode concomitantemente estender uma subclasse e implementar diversas interfaces, de forma análoga ao mecanismo de herança múltipla. Exemplo: public class SuperHomen extends SuperHeroi implements Voador, VisaoRaioX, SuperForca { mleal@inf.puc-rio.br 49 Programas Java A estrutura de um programa Java consiste exclusivamente na especificação de classes. A execução de um programa em Java consiste na execução de uma classe. Executar uma classe significa executar seu método estático main. O método main deve portanto especificar o programa a ser executado. mleal@inf.puc-rio.br 50

26 Olá Mundo! class Mundo { public static void main(string[] args) ) { System.out..out.println( Olá Mundo! ); mleal@inf.puc-rio.br 51 Programas Java Um programa em Java usualmente é composto por várias classes. A unidade de compilação em Java é a classe. Cada classe deve ser declarada em um arquivo separado tendo como nome o nome da classe declarada mais a extensão.java. Por exemplo, o arquivo Tambor.java deve conter a definição da classe Tambor. mleal@inf.puc-rio.br 52

27 Pacotes Para organizar as classes e facilitar a modularidade de código, Java suporta o uso de pacotes. Um pacote é um conjunto de classes e outros pacotes. Pacotes permitem a criação de espaços de nomes, além de mecanismos de controle de acesso. mleal@inf.puc-rio.br 53 Pacotes O nome do pacote qualifica os nomes de todas as classes e outros pacotes que o compõem, criando portanto um espaço de nomes independente. Se todos as classes declarando instrumentos fossem agrupados no pacote instrumentos, poderíamos acessar a classe Tambor através de uma declaração como: instrumentos.tambor t = new instrumentos.tambor(); mleal@inf.puc-rio.br 54

28 Pacotes Pacotes são tipicamente implementados como diretórios e os arquivos das classes pertencentes ao pacote devem ficar em seu diretório. Hierarquias de pacotes são construídas através de hierarquias de diretórios. Por exemplo o pacote java.tools.instrumentos deve estar localizado numa hierarquia de diretórios com a forma \java\tools\instrumentos. mleal@inf.puc-rio.br 55 Pacotes Para declararmos uma classe como pertencente a um pacote devemos: Declará-la em um arquivo dentro do diretório que representa o pacote; Declarar, na primeira linha do arquivo, que a classe pertence ao pacote, utilizando para isso a palavra reservada package. mleal@inf.puc-rio.br 56

29 Exemplo package instrumentos; class Tambor implements Instrumento{ void tocar(){ void afinar(int ajuste){ 57 Encapsulamento Revisitado Quando não declaramos explicitamente a visibilidade dos membros de uma classe, Java assume que a visibilidade é do tipo friendly. Membros friendly funcionam como public para classes dentro de um pacote e como private para classes fora do pacote. Java disponibiliza ainda o modificador protected,, que permite a visibilidade de membros de uma classe apenas em subclasses desta classe. mleal@inf.puc-rio.br 58

30 Visibilidade de Classes Todas as classes de um pacote enxergam as demais classes do mesmo pacote. Classes de outros pacotes só são visíveis em uma classe se forem explicitamente importadas através da declaração import. 59 Exemplo package instrumentos; import Java.util.ArrayList; import meupacote.*; class Tambor implements Instrumento{ void tocar(){ void afinar(int ajuste){ importa a classe ArrayList do pacote java.util importa todas as classes do pacote meupacote mleal@inf.puc-rio.br 60

31 Visibilidade É possível declarar uma classe como privada, usando o modificador private. Neste caso a classe deve ser declarada no mesmo arquivo da classe principal que irá utilizar esta classe. O nome do arquivo é o mesmo da classe principal. Quando uma classe for declarada sem um modificador ela será considerada friendly. mleal@inf.puc-rio.br 61 Exceções Java possui dois tipos de exceções: Checked Exceptions - são exceções que devem ser usadas para modelar falhas contornáveis. Devem sempre ser declaradas pelos métodos que as lançam e precisam ser tratadas (a menos que explicitamente passadas adiante). Unchecked Exceptions - são exceções que devem ser usadas para modelar falhas incontornáveis. Não precisam ser declaradas e nem tratadas. mleal@inf.puc-rio.br 62

32 Exceções O tratamento de exceções é feito através de estruturas de controle delimitadas pelas palavras reservadas try-catch catch-finally. Todo trecho de código no qual podem ser lançadas exceções do tipo checked deve ser declarado dentro de um bloco try. As rotinas responsáveis pelo tratamento de exceções são declaradas em um bloco catch. mleal@inf.puc-rio.br 63 Exemplo FileReader f = null; try { f = new FileReader(args[0]); f.close(); abre um arquivo - pode lançar uma exceção do catch (IOException e){ tipo IO System.out.println(e); if (f!= null) f.close(); captura a exceção mleal@inf.puc-rio.br 64

33 Exceções Um bloco try pode conter vários tratadores de exceção. O bloco finally permite especificar um trecho de código que sempre deve ser executado independentemente da ocorrência de exceções. Se uma exceção não for tratada pelo bloco que a lançou, ela irá se propagar seguindo a pilha de chamadas (cadeia dinâmica). mleal@inf.puc-rio.br 65 Exemplo FileReader f = null; try { f = new FileReader(args[0]); catch (IOException e){ System.out.println(e); catch (OutraException e){ System.out.println(e); finally{ if (f!= null) f.close(); sempre executa mleal@inf.puc-rio.br 66

34 Exemplo FileReader f = null; try { f = new FileReader(args[0]); catch (IOException e){ System.out.println(e); catch (OutraException e){ System.out.println(e); finally{ if (f!= null) f.close(); sempre executa mleal@inf.puc-rio.br 67 Exceções Pode-se ainda definir novas exceções através da especialização da classe Exception ou de qualquer uma de suas subclasses. Métodos que não tratam uma exceção do tipo checked devem declarar isso explicitamente em sua assinatura através do modificador throws. mleal@inf.puc-rio.br 68

35 Exemplo public void metodox() throws IOException{ FileReader f = null; try { f = new FileReader(args[0]); indica o possível lançamento f.close(); desta exceção catch (Exception e){ System.out.println(e); if (f!= null) f.close(); trow e; captura qualquer exceção relança a exceção mleal@inf.puc-rio.br 69

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação

Leia mais

Palavras Reservadas da Linguagem Java

Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java: Categorias Tipos de dados primitivos Literais Pseudo-variáveis Desvio e controle de fluxo Pacotes Exceções Modificadores de

Leia mais

Java First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração

Java First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração Java First-Tier: Aplicações Orientação a Objetos em Java (II) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Sobrecarga Um recurso usual em programação OO é o uso de sobrecarga

Leia mais

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Java First-Tier: Aplicações. Herança: Simples Múltipla. Orientação a Objetos em Java (III) Problemas de Herança Múltipla.

Java First-Tier: Aplicações. Herança: Simples Múltipla. Orientação a Objetos em Java (III) Problemas de Herança Múltipla. Java First-Tier: plicações Orientação a Objetos em Java (III) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Herança: Simples Múltipla O tipo de herança que usamos até agora é chamado

Leia mais

Análise de Programação

Análise de Programação Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

Programação Estruturada e Orientada a Objetos

Programação Estruturada e Orientada a Objetos INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

Leia mais

Linguagem Java - Introdução

Linguagem Java - Introdução Linguagem Java - Introdução Identificadores válidos resultado teste01 _numeroclientes $fortuna Identificadores Identificadores inválidos 101dalmatas 34 #x Palavras reservadas abstract assert*** boolean

Leia mais

Java Básico. Carga Horária: 32 horas. Pré-requisito: Lógica de Programação; JAVA. Conteúdo Programático

Java Básico. Carga Horária: 32 horas. Pré-requisito: Lógica de Programação; JAVA. Conteúdo Programático Java Básico Objetivo: Os assuntos apresentados no decorrer do curso Java Básico incluem os conceitos gerais desta linguagem assim como a definição e utilização de seus recursos diversos, tais como: tipos

Leia mais

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Terminologia Definições: Exceção é a ocorrência de uma condição anormal durante a execução de um método Falha

Leia mais

Programação Java. Tratamento de Exceções

Programação Java. Tratamento de Exceções Programação Java Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Motivações para Exceções Um método pode detectar uma falha mas não estar apto a resolver sua

Leia mais

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções Carlos Bazilio Isabel Rosseti Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense Motivação prever na implementação do sistema situações

Leia mais

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância

Leia mais

Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos. Departamento de Informática Prof. Anselmo C.

Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos. Departamento de Informática Prof. Anselmo C. Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos Departamento de Informática Prof. Anselmo C. de Paiva Classes O conjunto de requisições que um objeto pode cumprir é determinado

Leia mais

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento Orientação a objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Linguagens orientadas a procedimentos e linguagens orientadas a objetos Unidade de programação: funções e classes

Leia mais

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II Classes e Objetos Objetos Um conjunto de estados e comportamentos Classes Um modelo para a criação de objetos 1 Pacotes e Java API Pacotes Um conjunto

Leia mais

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III Programação Orientada a Objetos Alexandre César Muniz de Oliveira Métodos e Atributos Parte III Métodos [mod] tipo nome ([tipo arg]) [throws exc]{ [mod]: zero ou mais modificadores separados por espaços

Leia mais

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Introdução Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com www.bolinhabolinha.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Introdução ao Desenvolvimento

Leia mais

Ambientação com a Sintaxe de Java: parte 1

Ambientação com a Sintaxe de Java: parte 1 Ambientação com a Sintaxe de Java: parte 1 Prof. Gustavo Wagner FATEC-PB Programas em Java Texto do programa: arquivo com extensão.java Arquivo contém ao menos uma classe Nome do arquivo deve ser IGUAL

Leia mais

Introdução ao Java. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá

Introdução ao Java. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá Introdução ao Java Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Classes e Objetos, Construtores e Desconstrutores, Atributos e

Leia mais

MsC. João Maria MsC. Liviane Melo

MsC. João Maria MsC. Liviane Melo Disciplina: Programação Orientada à Objetos AULA 02 Corpo docente: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio Procópio Esp. Felipe Dantas MsC. João Maria MsC. Liviane Melo 2 Tipo Tamanho Alcance

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis

Leia mais

Programação Orientada a Objetos SANTOS, Rafael (PLT)

Programação Orientada a Objetos SANTOS, Rafael (PLT) Programação Orientada a Objetos SANTOS, Rafael (PLT) Possibilita atribuições em sequência na mesma instrução Retorna o valor atribuído Atribuições compostas: incluem a própria variável: +=, *=, -=, etc

Leia mais

Aula 1 POO 1 Prática. Profa. Elaine Faria UFU

Aula 1 POO 1 Prática. Profa. Elaine Faria UFU Aula 1 POO 1 Prática Profa. Elaine Faria UFU - 2019 Introdução Java Linguagem de programação poderosa Utiliza o paradigma Orientado a Objetos Muito utilizada em aplicativos para Internet e para redes Difundida

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Sintaxe Básica do Java. João Paulo Q. dos Santos

Sintaxe Básica do Java. João Paulo Q. dos Santos Sintaxe Básica do Java João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Plano de Aula Introdução; Método Main; Variáveis: Tipos primitivos; Referências para Objetos; Operadores; Estruturas: Condicionais

Leia mais

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO REVISÃO POO INTRODUÇÃO À LINGUAGEM JAVA CRIANDO CLASSES EM JAVA Convenção de Nomes em Java Classes iniciam com letras maiúsculas Métodos, atributos e variáveis locais iniciam com minúsculas. Declaração

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/50 Herança revisão (1) A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse

Leia mais

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,

Leia mais

O que é uma variável?

O que é uma variável? Escopo, Ligação e Ambiente de Execução mleal@inf.puc-rio.br 1 O que é uma variável? Uma variável pode ser definida como uma tupla r nome é um string usado para

Leia mais

Orientação a Objetos e Java

Orientação a Objetos e Java Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características

Leia mais

Instituto Superior de Engenharia de Lisboa

Instituto Superior de Engenharia de Lisboa Instituto Superior de Engenharia de Lisboa Introdução à Programação (PG) Docente: Pedro Viçoso Fazenda (pfazenda@cedet.isel.ipl.pt) Professor Responsável: Pedro Alexandre Pereira (palex@cc.isel.ipl.pt)

Leia mais

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues SEL0433 Aplicação de Microprocessadores I Revisão da Linguagem C Prof. Evandro L. L. Rodrigues Estrutura de um programa C Diretivas de pré processamento Declaração de variáveis globais Declaração de protótipos

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-5 Estruturas de Decisão e Controle. Arrays em Java Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de

Leia mais

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel) Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

Introdução a JAVA. Variáveis, tipos, expressões, comandos e blocos

Introdução a JAVA. Variáveis, tipos, expressões, comandos e blocos + Introdução a JAVA Variáveis, tipos, expressões, comandos e blocos +Roteiro 2 Variáveis e tipos Operadores aritméticos, lógicos, relacionais e bit-a-bit Atribuição Comandos básicos Ler, Escrever, Condicional,

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas 1 Programa Capítulo 9 Tratamento

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 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 mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas Programa Capítulo

Leia mais

Módulo 03. Identificadores, Palavras Reservadas, e Tipos

Módulo 03. Identificadores, Palavras Reservadas, e Tipos Módulo 03 Identificadores, Palavras Reservadas, e Tipos Objetivos Utilizar comentários em um programa. Distinguir entre identificadores válidos e não-válidos. Reconhecer palavras-reservadas da tecnologia

Leia mais

No final deste curso, saberás criar programas através da linguagem de programação Java.

No final deste curso, saberás criar programas através da linguagem de programação Java. Programação em Java Programação Formato: Mentored - Online Preço: 415 ( Os valores apresentados não incluem IVA. Oferta de IVA a particulares e estudantes. ) Horário: Flexível das 24h/24h Duração: ~45h

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções 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 Exceções São eventos que

Leia mais

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa

Leia mais

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa

Leia mais

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;

Leia mais

ptraux = dynamic_cast <PacoteNoite *> (vetor[i]); if (ptraux) auxiliar += vetor[i]->calculacusto();

ptraux = dynamic_cast <PacoteNoite *> (vetor[i]); if (ptraux) auxiliar += vetor[i]->calculacusto(); 429 //conteúdo do arquivo principalpacote.cpp... "5 - Imprimir o custo total apenas dos pacotes que serao entregues a noite;"

Leia mais

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@gmail.com

Leia mais

Tipos Primitivos, estruturas de iteração e decisão.

Tipos Primitivos, estruturas de iteração e decisão. Tipos Primitivos, estruturas de iteração e decisão. André Luis Meneses Silva andreluis.ms@gmail.com http://br.geocities.com/programacao2ufs/ Agenda Tipos Primitivos de Dados Variáveis e Constantes es Comandos

Leia mais

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. 1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras

Leia mais

Orientação a Objetos e a Linguagem Java

Orientação a Objetos e a Linguagem Java Orientação a Objetos e a Linguagem Java Afrânio Assis afranio@gmail.com Novembro/2006 1 Tipos, Literais, Operadores e Controle de Fluxo Novembro/2006 2 Identificadores Identificadores são palavras utilizadas

Leia mais

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Conceitos de Linguagens de Programação - Características. Paavo Soeiro Conceitos de Linguagens de Programação - Características Paavo Soeiro Motivação Para que possa escolher uma linguagem apropriada ao problema. Melhorar o entendimento da linguagem utilizada. Facilitar o

Leia mais

Revisão OO Básico. Orientação a Objetos em Java

Revisão OO Básico. Orientação a Objetos em Java Revisão OO Básico Orientação a Objetos em Java Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Nomenclatura A unidade básica de programação em linguagens orientadas a objetos é a

Leia mais

UNIFEI Disciplina Professor

UNIFEI Disciplina Professor UNIFEI Disciplina Professor Universidade Federal de Itajubá Instituto de Engenharia de Sistemas e Tecnologias da Informação-IESTI CCO02 Enganharia de Software II Enzo Seraphim Nota de aula de Java Encapsulamento

Leia mais

Java Variáveis e Controle Fluxo

Java Variáveis e Controle Fluxo Java Variáveis e Controle Fluxo 1 Variáveis primitivas p Todo bloco em java é delimitado por chaves ({ } ); p Dentro de um bloco, podemos declarar variáveis e usa las; p Em Java, toda variável tem um tipo

Leia mais

JAVA. Professor: Bruno Toledo

JAVA. Professor: Bruno Toledo JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código

Leia mais

C com introdução a OO

C com introdução a OO ... Centro Integrado de Tecnologia da Informação C com introdução a OO ... Centro Integrado de Tecnologia da Informação Aula 9 Ronald Dener - Instrutor Matheus Soares - Monitor 17 / outubro 17 / outubro

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores e Blocos de Inicialização

Leia mais

PHP: <?php echo("hello World");?> Printa Hello World na página do navegador, mais fácil do que no Java.

PHP: <?php echo(hello World);?> Printa Hello World na página do navegador, mais fácil do que no Java. Nome: Vinícius Meng 3º ano Escrever em tela: public class HelloWorld { public static void main (String[] args) { System.out. println ("Hello World"); Printa Hello World na tela do terminal. echo("hello

Leia mais

Linguagem de programação Java

Linguagem de programação Java Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Java Professor: Saulo Henrique Cabral Silva ENTENDENDO O JAVA 2 Entendendo o Java executando... A instância da JVM irá iniciar

Leia mais

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Possibilita o reuso de classes (código-fonte) Usar quando:

Leia mais

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Herança. Prof. Fernando V. Paulovich  23 de agosto de 2010 Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade

Leia mais

EXPRESSÕES BOOLEANAS. Ex: boolean b = false; // declara uma variável do tipo boolean e atribui false

EXPRESSÕES BOOLEANAS. Ex: boolean b = false; // declara uma variável do tipo boolean e atribui false Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 4 EXPRESSÕES BOOLEANAS O tipo primitivo boolean É um tipo de dados primitivo em Java que possui

Leia mais

Introdução a JAVA. Variaveis, tipos, expressões, comandos e blocos

Introdução a JAVA. Variaveis, tipos, expressões, comandos e blocos Introdução a JAVA Variaveis, tipos, expressões, comandos e blocos Roteiro Variáveis e tipos Operadores aritméticos, lógicos, relacionais e bit-a-bit Atribuição Comandos básicos Ler, Escrever, Condicional,

Leia mais

Instituto de Informática Estrutura de Dados II

Instituto de Informática Estrutura de Dados II Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O

Leia mais

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?

Leia mais

Modelo do Mundo Real. Abstração. Interpretação

Modelo do Mundo Real. Abstração. Interpretação Modelo do Mundo Real Mundo Real Abstração Interpretação Sistema de Software Modelo Algoritmo Abstração: O modelo precisa capturar apenas as características do mundo real que são importantes para o sistema

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores

Leia mais

Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans

Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans Objetivos da aula: Introduzir conceitos da linguagem Java Apresentar um histórico da linguagem Apresentar

Leia mais

Tipos de dados e comandos POO

Tipos de dados e comandos POO Tipos de dados e comandos POO Prof. Marcio Delamaro 1/46 Objetivo Vamos ver quais são os tipo de dados primitivos da linguagem Vamos ver quais são os principais comandos 2/46 Tipos Tipo Tamanho int 4 bytes

Leia mais

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça Introdução Universidade Federal de Uberlândia Programação Orientada a Objetos Prof. Fabiano Dorça Introdução Definições iniciais: classe, objeto, métodos, atributos. Introdução Ao escrever um programa

Leia mais

SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA...1

SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA...1 SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA...1 A Origem...2 O Caminho Para a Aprendizagem...4 Java Como Plataforma...6 Finalidade...8 Características...11 Perspectivas...13 Exercícios...14 CAPÍTULO 2 AMBIENTE

Leia mais

Classe Abstrata e Interface

Classe Abstrata e Interface Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos

Leia mais

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Sintaxe 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 mais

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos.

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos. 2. Classes e Objetos Uma classe é um modelo que define os atributos e métodos comuns a um conjunto de objetos de forma encapsulada. Atributos são informações ou dados que descrevem, categorizam ou quantificam

Leia mais

9 Exceções. Desenvolvimento OO com Java. Vítor E. Silva Souza ~ vitorsouza

9 Exceções. Desenvolvimento OO com Java. Vítor E. Silva Souza  ~ vitorsouza Desenvolvimento OO com Java 9 Exceções 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 Espírito

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 5 Conversão de Tipos Polimorfismo O Modificador final O Modificador

Leia mais

Tratamento de Exceções. LPG II Java. Tratamento de Exceções. Conceito de Exceções. Exemplo

Tratamento de Exceções. LPG II Java. Tratamento de Exceções. Conceito de Exceções. Exemplo Tratamento de Exceções LPG II Java Tratamento de Exceções Introdução Princípios do tratamento de exceções em Java Cláusula try Cláusula catch Cláusula finally Hierarquia de exceções em Java Considerações

Leia mais

Laboratório de programação II

Laboratório de programação II Laboratório de programação II Herança e Polimorfismo Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programaçã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 mais

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural

Leia mais

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática 6 Polimorfismo Sobrecarga (overloading) de métodos: public class x { public void m1( ) {... sobrecarga do método m1 public void m1 ( int p ) {... Diz-se que o nome de um método foi sobrecarregado ( overloaded

Leia mais

AULA 6 - ARRAYS. Array de 10 elementos

AULA 6 - ARRAYS. Array de 10 elementos 1 AULA 6 - ARRAYS Arrays são objetos que armazenam diversas variáveis do mesmo tipo. Eles podem conter variáveis de referência primitivas ou de objeto, mas o array propriamente dito sempre será um objeto

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA PÁTIO DE MATERIAIS Discente: Nielson Soares Disciplina: Algoritmo e Estrutura de Dados INTRODUÇÃO Orientação a objetos. Linguagem de programação JAVA. Pátio de matérias

Leia mais