• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

zepiroca

herança em java

9 mensagens neste tópico

boas pessoal.

É o seguinte tenho uma classe jogador com o seguinte codigo

public class Jogador {

private String nome;
private int pontuacao;
private Carta []cartasMao;

public Jogador(String nome){
  this.nome=nome;
  pontuacao = 0;
  cartasMao = new Carta [0];
}

public String getNome(){
  return nome;
}

public int getPontuacao(){
  return pontuacao;
}

  public Carta[]getCartaMao(){
     return cartasMao;
  }

E agora quero kriar uma classe banqueiro que herde os atributos da classe jogador mas n sei como herdar a pontuacao e as cartaMao

public class Banqueiro extends Jogador{

public Banqueiro(String nome){

  super(nome);
}
}

mas como fazer para herdar os outros atributos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Os atributos já estão herdados, mas como estão declarados como private não consegues aceder-lhes na classe Banqueiro.

Para leres os valores das variáveis podes usar os métodos getNome e getPontuacao.

Para modificares os valores das variáveis tens duas hipóteses:

1 - Declaras as variáveis na superclasse como public ou protected (recomendado);

2 - Crias dois métodos public setNome e setPontuacao.

O mesmo para as cartas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ja agora sera que me podem dar uma ajuda noutra coisa.

É assim eu tenho de criar uma classe carta mas nao sei bem komo a fazer, pois eu seu que ela vai ter como atributos naipe, valor e numero

Mas o meu problema é como a criar. Eu andei a pesquisar e vi k em mtos exemplos mas ainda vikei mais confuso

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Os atributos já estão herdados (...)

Errado! Os atributos privados nunca são herdados, isso seria uma falha completa de POO e lá se ia o encapsulamento. Mas a solução de aceder através dos getters e setters é correcta. É na verdade A solução correcta. A recomenda não o devia ser.

Se querem uma regra simples para determinar a visibilidade de um atributo: Todos os atributos são privados, apenas muito raramente se criam atributos publicos e nunca se colocam atributos como protegidos. Esta é uma regra prática e pode ter de ser ajustada mas é uma regra que devem seguir.

O que é que te confunde na criação da classe Carta?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem é assim eu tenho de fazer o jogo do uno mas com cartas normais.eu tinha pesado em criar uma classe carta com os seguintes atributos

private string naipe

private int valor

private string simbolo

mas depois nao consigo criar um baralho.ja tou a desesperar

por isso se alguem poder ajudar eu agradeço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Um baranho não é mais que um conjunto de cartas, certo? Logo vais criar o baralho por composição. Isto é, a classe Baralho terá um conjunto de cartas.

um private Carta[] baralho... não te respondi já a esta questão?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois ai eu ja tinha chegado mas o meu problema e preencher a tabela com as cartas pois

eu sei que tenho de as criar mas n sei faze-lo. o meu grande problema e esse

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem precisava saber exactamente onde tens dúvidas porque estou a tentar adivinhar onde estás preso...

Assumindo o que já disse, sobre o formato do baralho e das cartas:

(...)

private Carta[] baralho = new Carta[52]; //suponhamos que um baralho tem 52 cartas.
public Baralho() {
    for(int i = 0; i < baralho.length; i++) {
        baralho[i] = new Carta();
    }
}

Esta é a forma mais simples de construires o teu baralho, agora não estou a ter em conta os naipes, o tipos de cartas, etc, bem feito teriamos de dividir esse ciclo em vários de forma a iniciar correctamente um baralho. Por exemplo, sabes que existem 10 cartas de cada naipe, e que existem 4 naipes, isto sem contar com as figuras. depois tens 3 figuras para cada naipe. Só terias de criar os ciclos atendendo a estes números.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem seguindo o teu conselho tive a tentar criar o baralho mas n consegui colocar as cartas no seu interior.

eu ja entedi que tehno de fazer + ciclos mas mesmo assim n consegui.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora