Summary

This document is an introductory presentation on the Java programming language. It covers fundamental concepts, including syntax, object-oriented programming principles, and common applications. The presentation also compares Java with other programming languages like C++. The presentation includes details of different editions of Java (such as JSE and JEE).

Full Transcript

Algoritmos e Estruturas de Dados Diapositivos de apoio à unidade curricular, com alguns conteúdos baseados no livro: “Data Structures and Algorithms in Java”, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, 2014. Paulo Gouveia A L...

Algoritmos e Estruturas de Dados Diapositivos de apoio à unidade curricular, com alguns conteúdos baseados no livro: “Data Structures and Algorithms in Java”, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, 2014. Paulo Gouveia A Linguagem Java Tipos, Classes, Operadores, Instruções de Controlo, Arrays, Strings, Wrapper Classes, Packages, IDE NetBeans,... Algoritmos e Estrutura de Dados 2 A linguagem Java Criada pela Sun Microsystems em 1995, mas a partir de 2009 passou para o domínio da Oracle. É uma linguagem de Programação Orientada por Objetos. Com sintaxe similar à do C++. Acompanham-na um conjunto vasto de bibliotecas de classes Entrada/Saída Coleções Interfaces gráficas Etc. Embora pensada para criar aplicações para dispositivos inteligentes de consumo, rapidamente passou a ser usada na criação de páginas Web dinâmicas (com recurso às applets). Atualmente é usada na criação de todo o tipo de aplicações, incluindo aplicações empresariais de grande dimensão. A Linguagem Java 3 Algoritmos e Estrutura de Dados Popularidade da linguagem Java Na liderança das linguagens mais populares Durante mais de 2 décadas, apenas a linguagem C lhe fez alguma concorrência e, mais recentemente, as linguagens Python e C/C++ Atualmente está entre as 4 linguagens mais populares. Fonte: www.tiobe.com (TIOBE Programming Community Index), Setembro/2024. A Linguagem Java 4 Algoritmos e Estrutura de Dados Java vs C++ Mais pura no suporte do paradigma POO. De mais alto nível Não tem apontadores. Mais segura e robusta Não se tem acesso direto aos endereços de memória; A memória é libertada automaticamente (garbage collection); Possibilita uma melhor verificação da indexação dos arrays, da conversão de tipos, etc; Permite um melhor tratamento dos erros de execução no momento em que ocorrem. Maior portabilidade Compila para um código intermédio (o bytecode), e não diretamente para código máquina; Basta ter um ambiente de execução Java (JRE - Java Runtime Environment) instalado, para que o bytecode seja executado, seja qual for a plataforma (processador+SO) - "escreva uma vez, execute onde quer que seja" A JRE é constituída pela máquina virtual Java (JVM - Java Virtual Machine) e por bibliotecas Java, Por vezes, um pouco menos eficiente… A Linguagem Java 5 Algoritmos e Estrutura de Dados Outras particularidades que diferenciam o Java do C++ Não permite a herança múltipla de classes. Inclui o conceito de interface como elemento constituinte da linguagem. Em Java, todas as “funções” e variáveis têm de ser definidas dentro de classes (métodos e atributos) não há variáveis nem funções globais. Em Java, os parâmetros de um método são sempre passados por valor - em C++ poderiam ser também passados por referência. Os métodos são sempre polimórficos (métodos virtuais em C++). Cada classe deve ser definida num ficheiro fonte separado, com o mesmo nome da classe e extensão.java Não há a distinção que havia em C/C++ entre definições e declarações Por isso, deixa de haver ficheiros de declarações.h A Linguagem Java 6 Algoritmos e Estrutura de Dados Edições do Java Java Standard Edition (JSE) Concentra as funcionalidades básicas do Java, adequado para desenvolver aplicações para desktop e servidores. Java Enterprise Edition (JEE) Integra módulos do JSE, aos quais acrescenta APIs para o desenvolvimento de outro tipo de aplicações, como é o caso das aplicações Web. Java Micro Edition (JME) Adequado para o desenvolvimento de aplicações para dispositivos móveis e outros equipamentos eletrónicos de consumo. JDK (Java Development Kit) – composto pelo próprio JRE e por um conjunto de ferramentas de desenvolvimento, úteis ao programador. IDEs JAVA – NetBeans, Eclipse, IntelliJ IDEA, JBlue… A Linguagem Java 7 Algoritmos e Estrutura de Dados Exemplo de um programa A Linguagem Java 8 Algoritmos e Estrutura de Dados O método main Todo o código de um programa deve estar contido em classes O próprio main terá que ser um método de uma classe public static void main(String[] args) { // main method body... } O método main é sempre o primeiro a ser executado Não deve devolver nada; Deverá aceitar como parâmetro um array de strings, contendo os argumentos que eventualmente tenham sido passados na linha de comando aquando da invocação do programa; Deverá ser definido como método de classe e não de objeto (método estático) Um programa Java pode ser executado a partir da linha de comando usando o comando java, seguido do nome da classe que contém o método main: java Universe A Linguagem Java 9 Algoritmos e Estrutura de Dados Compilação e execução O Java é uma linguagem compilada. Código fonte Universe.java O código fonte dos Programas são compilados em ficheiros Compilador javac Universe.java bytecode, que são depois executados pela Java Virtual Machine (JVM). Bytecode Universe.class O bytecode é um código binário intermédio, independente da plataforma. Interpretador java Universe.class O código fonte é gravado em ficheiros com a extensão.java e o resultado da compilação em Output Hello Universe! ficheiros bytecode com a extensão.class A Linguagem Java 10 Algoritmos e Estrutura de Dados Criação de um programa java O código de um programa em java pode ser escrito usando um qualquer editor de texto (emacs, notepad, wordpad, vi, …) ou fazendo uso do editor incorporado num IDE (integrated development environment), tal como o Eclipse, NetBeans, IntelliJ ou BlueJ. Nesta unidade curricular usaremos o IDE NetBeans , que já vai na versão 23, para a criação e execução dos nossos programas em Java. O SW de instalação pode ser obtido de forma gratuita no site oficial: https://netbeans.apache.org/download/ Mas já antes deverão ter instalado o JDK, optando pela versão 17 ou mais atual, dado que o NetBeans 23 suporta o JDK 17, 21 e 23. https://www.oracle.com/technetwork/java/javase/downloads Será suficiente instalar o módulo ‘Java SE’. Pretendendo poupar espaço em disco, desmarcar a checkbox [Java EE]. A Linguagem Java 11 Algoritmos e Estrutura de Dados Criação no NetBeans dum projeto do tipo ‘Aplicação Java’ Em vrs anteriores do IDE, pode-se selecionar, equivalentemente, a categoria A Linguagem Java 12 Algoritmos e Estrutura de Dados Definição do nome e localização do projeto A Linguagem Java 13 Algoritmos e Estrutura de Dados Adição da classe principal Universe A Linguagem Java 14 Algoritmos e Estrutura de Dados Configuração inicial do projeto A Linguagem Java 15 Algoritmos e Estrutura de Dados Edição do código e execução A Linguagem Java 16 Algoritmos e Estrutura de Dados Ficheiros gerados A Linguagem Java 17 Algoritmos e Estrutura de Dados Curiosidade: repare na coincidência dos 4 modificadores de acesso surgirem juntos Palavras reservadas numa listagem por ordem alfabética (probabilidade de isso acontecer: 1/5856.5) Repare-se que uma boa parte das palavras reservadas são coincidentes com as do C++. A Linguagem Java 18 Algoritmos e Estrutura de Dados

Use Quizgecko on...
Browser
Browser