Pessoal… Estou estudando Java e como muitos aqui com aquela dificuldade de empregar os conceitos de Interface e Class abstrata …
Quando usa um quando usa o outro ???
Um exemplo com caso real please…
Ja sei que o exemplo do aviao e do passaro com a interface VOAR … Mas por aqui nao usamos muito este tipo de class. e to com dificuldade de empregar este conceito num caso real
Se alguem tiver um programinha que use estes conceitos e quiser postar agradeço…
Segue exemplo que estou tentando implementar se alguem poder me ajudar valeu :D…
Livro.java
class Livro{
private int isbn;
private String nome,autor;
//Construtor
public Livro (int i, String n, String a ){
this.isbn = i;
this.nome = n;
this.autor = a;
}
public int getIsbn() {
return isbn;
}
public String getNome() {
return nome;
}
public String getAutor() {
return autor;
}
}
Cds.java
class Cds {
private int codigo;
private String album,cantor;
private boolean duplo;
//Construtor
public Cds (int c, String a, String ca, boolean d ){
this.codigo = c;
this.album = a;
this.cantor = ca;
this.duplo = d;
}
public int getCodigo() {
return codigo;
}
public String getAlbum() {
return album;
}
public String getCantor() {
return cantor;
}
}
Reserva.java
public interface Reserva {
public void Reserva(int codigo);
}
Loja.java
class Loja {
public static void main(String args[]){
Livro l1 = new Livro(123456,"Core Java","Nao sei");
Cds c1 = new Cds(00000,"Let Love In","Goo Goo Dolls",true);
System.out.println(l1.getNome());
}
class ReservaCD extends Cds implements Reserva{
public ReservaCD(int c, String a, String ca, boolean d){
super(c,a,ca,d);
}
public void Reserva(int codigo) {
}
}
class ReservaLivro extends Livro implements Reserva{
Livro (int i, String n, String a ){
super(i,n,a);
}
public void Reserva(int codigo) {
}
}
}
Gostaria de saber se o raciocinio está correto ?
O Loja.java estou apanhando pra implementar… :assusta:
Se alguem puder ajudar agradeço!!!
No exemplo que eu postei nau uso class abstrata porem pelo que eu li caso eu queira implementar uma class onde exista alguns metodos já definidos e outros para implementar deve se usar uma classe abstrata.
Podem alterar o quanto achar necessário… Certamente isto não ira ajudar apenas eu