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

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

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

É usual respeitarem-se as seguintes convenções: Nome de uma classe começa por maiúscula (e.g. Solido)

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

ESQUEMA AULA PRÁTICA 1

ESQUEMA AULA PRÁTICA 1

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.

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

(Características fundamentais de Codificação de programas)

Linguagem de Programação II

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Desenvolvimento de Software I

09/05/2017. Técnicas Avançadas de Programação APRESENTAÇÃO

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

AULA TEÓRICA 3 Tema 2. Introdução a programação em Java (JVM, JDK)

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

Aula teórica 7. Preparado por eng.tatiana Kovalenko

Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação. Prof. Bruno Moreno

Instituto Superior de Engenharia de Lisboa

JAVA. Professor: Bruno Toledo

Java na Cabeça Mudando de Paradigma

INTRODUÇÃO A LINGUAGEM JAVA

Introdução à Programação de Computadores Fabricação Mecânica

A linguagem Java foi projetada tendo em vista os seguintes objetivos:

Introdução. PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa

Programação I 2º Bimestre (material 1)

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Arrays em Java. Prof. Renato Pimentel. GGI030 Programação Orientada a Objetos. Universidade Federal de Uberlândia Faculdade de Computação

ALOCAÇÃO DINÂMICA DE MEMÓRIA

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

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

FIC-POO. Aula 1.2 Introdução a Java e POO. Prof. Dr. Bruno Moreno

Esta é a única declaração da aplicação

Programação de Computadores II TCC Profs.: Anselmo Montenegro (1) & Marcos Lage (2) (1) (2)

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

Introdução à plataforma Java

Objetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples.

Revisão NT Editora e Figuramundo. Projeto Gráfico NT Editora. Editoração Eletrônica NT Editora e Figuramundo. Capa NT Editora

Aula 2 Introdução a Linguagem Java

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA

Fundação Educacional Encosta Inferior do Nordeste

Introdução a Linguagem

Módulo 1. Introdução. Programação Orientada a Objetos I Java (Rone Ilídio)

Linguagem de Programação III

Introdução ao ambiente Java

Métodos de implementação de linguagens. Kellen Pinagé

Introdução ao Java. Prof. Herbert Rausch Fernandes

Algoritmos I Aula 12 Linguagem de Programação Java

Programação I A Linguagem C. Prof. Carlos Alberto

A Linguagem Java. Prof. Vicente Paulo de Camargo

POO Programação Orientada a Objetos. Classes e Objetos 2

Algoritmia e Programação APROG. Tecnologia JAVA. IDE Netbeans. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Arquitecturas Alternativas. Java Virtual Machine

AULA 1 INTRODUÇÃO AO JAVA

O AMBIENTE DE DESENVOLVIMENTO

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Linguagem de Programação II Programação Orientada a Objetos. Ambientes de Programação

PROGRAMAÇÃO I. Introdução

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

Programação I Curso: Sistemas de Informação

AULA TEÓRICA 4. Tema 3. Linguagem de programação de alto nível Java

Linguagens de Programação Classificação

Vetores e Matrizes. Prof. Fabrício Olivetti de França Charles Henrique

Compilação dos trabalhos: questões de concurso

Introdução ao Python. Programa Computacional

INTRODUÇÃO A LINGUAGEM JAVA

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Quinta aula

Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade

Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Desenvolvimento de Aplicações Desktop

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

Algoritmos e Programação

Informática Parte 15 Prof. Márcio Hunecke

Algoritmos e Estruturas de Dados I

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

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

Algoritmos e Programação

Introdução à linguagem C

Computação e Programação

Trabalho Final de SISTEMAS INTEGRADOS DE MANUFATURA

Lição 4 Fundamentos da programação

Nosso Primeiro Programa Java

PROGRAMAÇÃO I INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

Instalação JDK 10/03/2017

Classes e Objetos. Sintaxe de classe em Java

AULA TEÓRICA 9. Tema 8. Herança (continuação) Ø Sobreposição de métodos. Ø Variáveis e métodos estáticos. Ø Hierarquia de classes.

Professor: José Ronaldo Leles Júnior Curso: Sistemas de Informação

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C#

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.

TÉCNICO DE INFORMÁTICA - SISTEMAS

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Introdução ao IDE Netbeans (Programação Java)

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

Sâmia Rodrigues Gorayeb. Arquitetura de Computadores Linguagem de Máquina

Transcrição:

Programação Orientada a Objectos - 25/26; 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 sem ter que ser alterado ou compilado novamente. Em Java o código fonte da aplicação é compilado para uma representação intermédia, independente do sistema de execução e da arquitectura da máquina. Essa representação intermédia é designada por byte-code. De seguida este código pode ser interpretado sobre o ambiente de cada máquina específica. Para cada plataforma em que se pretende executar um programa em Java é necessário um motor de execução designado por Java Virtual Machine (JVM). A JVM recebe byte-code e transforma-o em instruções executáveis na máquina onde o ambiente Java é instalado. Editor Código Java Compilador de Java (javac) Java byte-code Interpretador de Java (JVM) Código executável Apontamentos de POO - 14

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro O JAVA pode ser usado para criar dois tipos de programas: Aplicações e Applets. Aplicações Java são programas que após serem compilados apenas requerem uma JVM para serem interpretados e executados. Applets são porções de código Java não executável por si próprio. Requerem a existência de um browser que incorpore e execute a JVM. A linguagem Java A linguagem Java foi criada no início dos anos 9 por uma equipa da Sun Microsystems liderada por James Gosling. Aquela equipa ao pretender desenvolver software para pequenos equipamentos de electrónica deparou-se com dificuldades em encontrar uma linguagem adequada para criar programas que pudessem ser executados em dispositivos com arquitecturas muito diferentes. A tentativa de criar uma linguagem independente da arquitectura a programar deu origem ao Java (inicialmente designada por Oak). Java é uma linguagem Orientada a Objectos de uso geral Java segue a sintaxe e a estrutura geral do C++ Apontamentos de POO - 15

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro A JVM está embutida nos dois principais Web-browsers (Netscape Navigator e Microsoft Internet Explorer) Java é uma marca comercial da Sun Microsystems Java é também um esforço de marketing bem conseguido pela Sun O nome Java Java é o nome de uma ilha da Indonésia (13.Km2, 9.. de habitantes, capital Jakarta) Java é o nome de um tipo de café criado em Java e ilhas vizinhas Java é uma palavra inventada pela Sun para substituir o nome inicial da linguagem (Oak) Apontamentos de POO - 16

Classes em Java Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro Em Java os programas são constituídos por diversas classes Algumas classes são escritas por nós, outras fazem parte da biblioteca As classes são agrupadas em pacotes (packages) As classes possuem campos e métodos As classes são tipos. Em Java cada objecto pertence a um determinado tipo. O tipo de um objecto é a sua classe. Algumas classes são Applets e podem ser executadas num browser Um construtor é uma operação especial da classe Serve para criar um objecto da classe Todos os construtores de uma classe têm o mesmo nome que a classe Os construtores são identificados pela sua lista de parâmetros Apontamentos de POO - 17

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro Tipos referenciados Objectos e Arrays Designam-se por tipos referenciados entidades (objectos ou arrays) que são acedidas através de uma variável que contém o seu endereço Objectos Veiculo carro1; // é reservado um espaço de memória, //associado ao identificador carro1, e é-lhe //atribuído o valor null. carro1 = new Veiculo(1535, 21); carro1 pot = 1535 ano = 21 // é criado (instanciado) um objecto do tipo Veiculo e o seu endereço é colocado em carro 1. Suponhamos: Veiculo carro2 = new Veiculo(); Veiculo carro3; carro2 null null carro3 null Apontamentos de POO - 18

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro O que significam as seguintes instruções? carro2 = carro1;? carro1 = carro3;? carro1 = carro2;? carro1 == carro2;? Veiculo carro4 = new Veiculo(1535, 21); carro1 == carro4;? Arrays Os arrays são entidades referenciadas mas não são objectos A criação de tabelas (arrays) assemelha-se à criação de objectos int [] tabela; tabela = new int [1]; ou int [] tabela = new int [1]; tabela @ @ @+1 @+2 @+3 @+4 @+5 @+6 @+7 @+8 @+9 Apontamentos de POO - 19

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro São criados dinamicamente (em tempo de execução) e o seu espaço é automaticamente reaproveitado quando deixam de estar referenciados int lista[]; // declaração "à la C" int[] lista; // declaração equivalente à anterior int[] lista = { 1, 12, 33, 23, 56, 67, 89, 12 }; /* declaração com inicialização */ int[] lista = new int[2]; // array de inteiros com 2 componentes byte[] pixels = new byte[6*8]; /* pixels é um array de 48 bytes */ String[] texto = new String[2]; /* texto é um array de 2 Cadeias de caracteres */ int[] potencias2 = {2, 4, 8, 16, 32, 64, 128, 256, 512, 124, 248, 496}; String[] moedas = { "Dólar", "Yene", "Euro", "Florim" }; // String é um tipo de objecto(classe String)!!! A multi-dimensionalidade é implementada como aninhamento (array de arrays) int [] [] tabela = new int[1] [2]; /*tabela é um array bidimensional de 1 linhas e 2 colunas*/ Apontamentos de POO - 2

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro int tabela[] [] = new int[1] [2]; /* declaração equivalente à anterior */ tabela @ @ @+1 @+2 @+3 @+4 @+5 @+6 @+7 @+8 @+9 int[][] matriz = new int[3][];? Os elementos do tipo int[] deste array podem ter dimensões distintas... int[][] matriz = { {1,2}, {1, 2, 3}, {19, 2, 34, 21, 16}};...o que não implica perda de controlo, tendo o cuidado de utilizar array.length evita-se assim o acesso a elementos inexistentes (ArraylndexOutOfBoundsException) Apontamentos de POO - 21

Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro Acesso aos elementos de um array int[] a = new int[2] ; int[][] tabela = new int[2][];... tabela[1] = new int[5];... int x, y; x= tabela[1][2] + a[4]*a[7]; x= a[o]; y = a[a.length-1]; a[o] = x + y; Cópia de uma tabela? Assim? int[] b; b = a; Ou assim? int[] b = new int[2] ; for(int i = ; i< a.length ; i++ ) b[i] = a[i] ; Apontamentos de POO - 22