package com.trifulcas.cartas;
public abstract class Carta {
private String palo;
private int numero;
protected String getPalo() {
return palo;
}
protected void setPalo(String palo) {
this.palo = palo;
}
public int getNumero() {
return numero;
}
protected void setNumero(int numero) {
this.numero = numero;
}
public abstract int getValor();
@Override
public String toString() {
return getNumero()+" de "+getPalo();
}
}
package com.trifulcas.cartas;
public class Espanyola extends Carta {
@Override
public int getValor() {
return getNumero()<10?getNumero():10;
}
}
package com.trifulcas.cartas;
public class Francesa extends Carta {
@Override
public int getValor() {
// TODO Auto-generated method stub
return getNumero();
}
}
package com.trifulcas.cartas;
import java.util.ArrayList;
public class Baraja {
private ArrayList<Carta> baraja=new ArrayList<>();
public int addCarta(Carta carta) {
baraja.add(carta);
return baraja.size();
}
public int totalValor() {
int total=0;
for(Carta c:baraja) {
total+=c.getValor();
}
return total;
}
}
package com.trifulcas.cartas;
public class ProbarCartas {
public static void main(String[] args) {
// TODO Auto-generated method stub
Francesa f= new Francesa();
f.setPalo("Picas");
f.setNumero(8);
System.out.println(f);
Baraja miBaraja=new Baraja();
miBaraja.addCarta(f);
Espanyola e=new Espanyola();
e.setPalo("Oros");
e.setNumero(12);
miBaraja.addCarta(e);
System.out.println(miBaraja.totalValor());
}
}