A maior rede de estudos do Brasil

Grátis
142 pág.
Apostila Formação Programador Java

Pré-visualização | Página 10 de 25

por sua ausência, o compilador Java cria 
automaticamente. Um método construtor é o responsável pela criação do objeto, 
mas é comum a necessidade de interferir no processo de criação, principalmente 
para reforçar determinadas regras que a classe pode precisar manter. 
Programação Aplicada - Java 55 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
 Para realizar essa definição na classe, você pode declarar explicitamente um 
método com o mesmo nome da classe e inserir em seu bloco de instruções (entre as 
chaves), um conjunto de regras que deverão ser seguidas durante a instanciação da 
classe, ou seja, após o objeto ter sido criado, o conjunto de instruções contidas no 
construtor serão executadas. 
public class Pessoa 
{ 
 private String nome; 
 private int idade; 
 
 public Pessoa(String nome, int idade) 
 { 
 this.nome = nome; 
 this.idade = idade; 
 } 
} 
 
 
3.5 Garbage Collection 
 
Nesse momento, você pode imaginar que um programa Java pode conter 
inúmeras classes e vários objetos em memória, instanciando-as. À medida que você 
instancia classes, a alocação de memória ocorre naturalmente, fazendo com que 
seja ocupada por um grande número de armazenamentos e, por sua vez, precisa ser 
liberada quando não for mais necessário. 
Para auxiliar o programador na tarefa de gerenciamento de memória da 
aplicação, a plataforma Java oferece um processo chamado “Garbage Collection”, 
executado em segundo plano, como um sistema operacional, que registra toda 
memória alocada e mantém contagem do número de referências para cada ponto da 
memória. A JVM, periodicamente, verifica se há na memória alguma referência com 
valor 0, procedendo então a desalocação. 
Em resumo, esse processo é responsável por liberar parte da memória 
alocada que não é mais referenciada. Essa condição é necessária, garantindo que 
os objetos não mais necessários para o programa em execução sejam lixos e 
possam ser excluídos da memória. 
Programação Aplicada - Java 56 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
Essa funcionalidade faz parte do núcleo do ambiente de execução Java, com 
o objetivo de liberar os programadores da necessidade de liberar memória alocada, 
o que, em linguagens mais antigas era exigido e gerava mais um trabalho para o 
progamador (quando não esquecia de fazê-lo). Além disso, com o uso do Garbage 
Collection, há garantia da integridade do programa, deixando a responsabilidade do 
que deve ou não ser descarregado da memória a cargo do processo do JRE, não 
gerando com isso risco de uma exclusão indevida na memória. 
 
 
 
 
Síntese 
 
Nesta aula tivemos a grande oportunidade de conhecer a aplicação da OOP 
em Java. É a união dos conceitos que você já aprendeu com a prática da 
implementação de classes e objetos em Java. 
Na próxima aula você aprenderá mais detalhes para a construção do corpo de 
instruções em linguagem Java, com o uso de estruturas de dados. 
As peças vão se encaixando cada vez mais, na direção de aplicações mais 
complexas em Java. 
Até lá. 
Programação Aplicada - Java 57 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
Exercícios Propostos 
 
1) .Por que devemos utilizar modificadores na declaração campos em uma 
classe? 
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________ 
______________________________________________________________ 
2) Qual a necessidade do Garbage Collection? 
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________ 
3) O que é um método construtor? 
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Programação Aplicada - Java 58 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
Aula 3 
ESTRUTURAS DE PROGRAMAÇÃO 
 
 
Objetivos da aula 
 
Ao final desta aula, você deverá ser capaz de: 
 
• Trabalhar com lógica condicional em Java; 
• Utilizar os operadores lógicos; 
• Implementar blocos de repetição em Java; 
• Descrever com detalhes o uso de strings e arrays. 
 
 Conteúdos da aula 
 
Acompanhe os conteúdos desta aula. Se você preferir, 
assinale os conteúdos na medida em que for estudando. 
• Trabalhando com estruturas de dados; 
• Controle de fluxo; 
• Operadores lógicos; 
• Blocos de repetição (loops); 
• Strings; 
• Arrays 
 
 
 
 
 
 
 
 
 
 
Programação Aplicada - Java 59 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
Prezado(a) aluno(a), 
Nesta aula você aprenderá a trabalhar com blocos de programação em 
Java. Vamos inicialmente falar sobre as princípais características para 
trabalhar com blocos de código e suas particularidades. Depois vamos tratar das 
estruturas convencionais de lógica, como controle de fluxo e loops. Finalmente, 
vamos dar uma atenção especial nos trabalhos com strings e arrays. 
Perceba que na maioria do conteúdo desta aula, vamos aplicar os conceitos de 
lógica de programação e OOP, que você já aprendeu, usando a linguagem Java e 
entendendo suas regras e sintaxe. 
Boa Aula! 
 
 
1 TRABALHANDO COM ESTRUTURAS DE DADOS 
 
 O conteúdo de instruções de código Java entre chaves é considerado um 
bloco de código. É comum encontrarmos blocos de código dentro de outro bloco 
como também blocos de código separados em uma mesma classe (figura 21). O 
principal objetivo de compreender os limites de um bloco é entender como funciona 
o escopo de dados na linguagem Java. 
 
 
Figura 21 – Blocos de código em uma classe 
 
 A regra principal é: ao declarar uma variável em um programa, você não pode 
utilizar o valor armazenado nela em outro programa. Quando a variável está dentro 
de um bloco, você não pode referenciá-la em outro bloco. A este tipo de limitação 
Programação Aplicada - Java 60 
 
SOCIESC – Sociedade Educacional de Santa Catarina 
 
chamamos escopo. Isso também determina que um mesmo nome de variável não 
pode ser declarado duas vezes no mesmo bloco. 
 Novamente o uso de modificadores de acesso (tabela 7) são fundamentais 
para o uso adequado de variáveis de acordo com seu escopo. Quando não é 
especificado o modificador na declaração da variável, ela é considerada friendly 
(amigável) e poderá ser acessada por todas as classes que pertencem ao pacote. 
 
Tabela 7 – Modificadores de escopo 
 
 
1.1 Sobrecarga de métodos 
 
 À medida que implementamos métodos em nossas classes, é comum termos 
um grande número de métodos para atender determinadas necessidades. O 
conceito de sobrecarga de métodos é a capacidade de implementar métodos com o 
mesmo nome em uma mesma classe. O compilador consegue diferenciá-los pela 
assinatura do método, composta do identificador do método, o tipo de retorno, os 
tipos de dados dos parâmetros e a quantidade de parâmetros. 
 Esse recurso é muito útil na criação de classes cujos métodos utilizam 
parâmetros opcionais, exigindo a criação de métodos com diferentes quantidades e 
tipos de parâmetros. A sobrecarga de métodos é uma das formas de implementação 
do polimorfismo em Java. 
class ContaBancaria 
{ 
 int numeroDeConta; 
 int nomeDoCorrentista; 
 int saldo; 
Programação