O paradigma de programação orientado à objetos é o principal...
O paradigma de programação orientado à objetos é o principal paradigma utilizado em Java. Com base nos conceitos de orientação a objetos, e dadas as classes a seguir, cada qual em seu respectivo arquivo e todas estando no mesmo pacote, com classpath e JDK versão 1.7 devidamente configurados, e todos os imports corretamente feitos.
X.java
public class X<T> {
private T t;
public void add(T t){
this.t = t;
}
public T get(){
return t;
}
}
A.java
public abstract class A {
private int B=0;
public int getB(){
return B;
}
public String toString(){
return "0";
}
}
B.java
public class B extends A{
private X<Integer> B = new X<Integer>();
public B(int B){
this.B.add(B);
}
public void setB(int b){
this.B.add(b);
}
public int getB(){
return this.B.get();
}
}
Z.java
public class Z extends A{
private X<Integer> B = new X<Integer>();
public Z(int B){
this.B.add(B);
}
public void setB(int b){
this.B.add(b);
}
public int getB(){
return this.B.get();
}
}
Y.java
public class Y {
public static void main(String[] args){
X<A> m = new X<A>();
X<Z> n = new X<Z>();
X<B> o = new X<B>();
for(int i=0;i<6;i++){
if(i%3==0)
n.add(new Z(i));
else
if(i%3==1)
o.add(new B(i));
else
m.add(new B(i));
}
System.out.print(n.get().getB());
System.out.print(o.get().getB());
System.out.print(m.get().getB());
}
}
Ao executarmos a classe Y.java, será exibido no console: