Buscar

classes e objetos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Exercício – UNIDADE 1 – AULA 3 – Classes e Objetos – Parte 1
O que é uma classe? Do que uma classe é composta?
O que é um objeto? O que é o estado de um objeto?
Identifique quais desses nomes são nomes de classe válidos em Java: _a, $c, _____2_w, _$, eis_um_nome_bastante_detalhado_para_uma_classe, Float, String, Pessoa, value2, object, Stream, iss0_é_valido.
Identifique porque cada um desses nomes não é válido: 122asd, #Pessoa, Aluno*IFPB, switch.
Em Java, arrays são objetos, tente representar graficamente (utilizando um desenho) como você acredita que ficaria a memória se eu executasse as seguintes linhas de código.
O que é um método construtor? Como ele é invocado? Como é identificado?
Qual o valor de uma variável de referência antes de ela receber a referência para um objeto?
O que é uma variável de referência? Para que ela serve? O que significa a comparação de duas variáveis de referência utilizando o operador ==?
Crie uma classe Pessoa, com os atributos nome (String), sexo (char, ‘m’ ou ‘f’) e a idade (int). Adicione a classe Pessoa um construtor com parâmetros que receba o valor inicial das suas propriedades. Crie uma classe Deus com um método criarPessoa, o qual recebe como parâmetros o nome, o sexo e a idade da pessoa. O retorno do método criarPessoa deve ser um objeto do tipo Pessoa. O método criarPessoa, da classe Deus, é um método construtor? Por quê?
Altere a classe Deus, do exercício 9, para garantir que só possa existir um único objeto da classe Deus (pesquise sobre o padrão de projeto Singleton). 
Qual a diferença de sobrecarga e sobrescrita de método?
Escreva uma classe que contenha métodos para retornar o maior de dois, três, quatro e cinco valores (um total de quatro métodos), considerando que os argumentos e retorno dos métodos podem ser do tipo int. O método que retorna o maior deve ser sobrecarregado (i.e. todos devem ter o mesmo nome). Dica: Os métodos podem ser chamados em cascata: para calcular o maior de três valores a, b e c, pode-se calcular o maior valor de a e b, e comparar esse resultado com c.
Em Programação, há duas formas de se passar parâmetros para uma função, por valor ou por referência. Na passagem por valor, uma cópia do valor da variável é passada para a função e, assim, alterações feitas na cópia não afetam a variável que foi copiada. Na passagem por referência, é passada uma referência a variável, assim, qualquer alteração que for feita numa variável passada por referência afetará diretamente essa variável. Sobre a passagem de parâmetros por valor e por referência, julgue os itens abaixo e escolha a opção que representa a soma dos itens dos verdadeiros:
Em Java, existe a passagem por parâmetros por valor e por referência.
Em Java, variáveis de tipo primitivo são passadas por valor e variáveis de referência são passadas por referências.
Em Java, só existem passagem de parâmetro por valor, assim, quando se passam uma variável de referência para um método, uma cópia do objeto apontada por essa variável é criada.
8. Uma cópia de uma variável de referência não pode ser utilizada para acessar o objeto apontado originalmente pela variável de referência. 
12. Em Java, usa-se a palavra reservada transient para determinar se o parâmetro de entrada de um método será passado por valor ou por referência.
Crie uma classe que representará um Funcionário de uma Empresa. Esta classe deverá possuir atributos tais como: o seu número de Matrícula (pode ser do tipo Inteiro), o seu nome, a sua idade, o seu cargo e o seu salário. Crie os métodos gets e sets. Para esta classe, gere três Métodos Construtores: o 1º não deve receber parâmetros, mas deve iniciar o valor o salário com R$ 1.500,00; 2º deve receber como parâmetro o nome e a idade do funcionário, e preencher estes dois campos esses valores recebidos; o 3º deve receber o número de matrícula, o nome, e o salário, e preencher estes três campos com três os valores recebidos. Para alterar o valor dos atributos utilize o método set desses atributos. 
Na classe Funcionário da questão anterior, altere os métodos para garantir que o salário do funcionário nunca seja alterado para um valor menor que 1500 e que não haja usuários com matrícula negativa.
Crie uma classe chamada quadrilátero com os atributos altura e comprimento, ambos do tipo inteiro. Crie dois construtores na classe que quadrilátero: um que receba dois parâmetros correspondendo a altura e comprimento, respectivamente, e outro que receba apenas um parâmetro. Esse segundo construtor deve ser utilizado para construir quadrados (i.e., quadriláteros que possuem o mesmo valor para o comprimento e altura). Sobrescreva o método equals para testar se dois quadrados são iguais. Sobrescreva o método toString para desenhar o quadrado no console utilize o símbolo _ (underline) para o comprimento e | (barra vertical) para a altura.
Na classe que representa um quadrilátero, crie os seguintes métodos (tente inferir pelo nome dos métodos o que eles devem fazer):
public boolean isQuadrado()
public int getArea()
public int getPerimetro()
Crie uma classe chamada Contato. Um contato possui: um nome; um celular e um endereço. Na classe Contato crie os gettes e setters necessários e dois construtores: um que inicializa o valor dos atributos do contato e outro sem parâmetros. Na classe Contato, sobrescreva o método toString para que ele retorne os dados da pessoa (nome, celular e endereço) por extenso.
Crie um método main() que crie dois objetos do tipo Contato: um que represente você e outro que represente um colega. Para criar “você”, utilize o construtor com parâmetros, para criar o seu colega utilize o sem parâmetros e os métodos setters para configurar o valor dos atributos. Exiba na tela os seus dados chamando o método toString e os dados da segunda pessoa chamando os métodos getters de seus atributos. Qual foi a forma mais fácil para criar o contato? Qual foi a forma mais fácil para imprimir o valor dos atributos do contato?
Ainda na classe contato, sobrescreva o método equals para testar se dois contatos são iguais (i.e., tem o mesmo nome, celular e endereço). Crie uma classe chamada Agenda com um array de Contatos com capacidade para 10 contatos. Crie na classe agenda o método adicionarContato, que adiciona o contato no array SE ele já não existir, e removerContato que apaga o contato do Array (SE ele existir) e colocando null no seu lugar.

Outros materiais