Orientação a Objetos classe Carta

2 respostas
X

Salve…
estou com uma dúvida da hora de transformar em Orientação a objetos as seguintes classes:

public Baralho() { for (int i = 0; i < 10; i++) { baralho.add(new Carta(Naipes.Paus, i + 1)); baralho.add(new Carta(Naipes.Copas, i + 1)); baralho.add(new Carta(Naipes.Espadas, i + 1)); baralho.add(new Carta(Naipes.Ouros, i + 1)); } }

public Carta(Naipes vNaipe, int vNumero) { naipe = vNaipe; numero = vNumero; }

como eu faria para transformar a classe carta em uma classe abstrata, e extendendo a ela as quatro naipes, e mais quando for criado o objeto baralho, as cartas sempre estarem em ordem diferente?

2 Respostas

peczenyj

Uma carta tem um naipe, não tem que extender naipe pois não faz sentido.

Uma carta tem 2 atributos que a definem: sua numeracao e naipe. E sua numeracao Nao pode ser maior que 13 nem 0 ou negativo.

1

vc poderia usar enum types para criar suas cartas
nos tutoriais da sun tem um exemplo nos exercicios
http://java.sun.com/docs/books/tutorial/java/javaOO/enum.html

em relacao ao baralho, vc pode armazenar em uma colecao e utilizar o metodo shuffle da classe Collections

Criado 12 de maio de 2010
Ultima resposta 12 de mai. de 2010
Respostas 2
Participantes 3