/*
Parameters: <T> the type of objects that this object may encrypt/decrypt
*/
public interface Encryptable<T> {
    public T encrypt();
    public T decrypt();
}
/*
 * - Podeis mirar el public interface Comparable<T> :
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/lang/Comparable.java
 * El concepto es muy similar
 *
 * Y, se sale de temario pero podeis mirar tambien:
 * - public interface List<E> extends Collection<E> :
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/List.java
 * -public interface  Map<K,V> :
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/util/Map.java
*/