Programação Genérica

 

A linguagem Java permite ao programador definir classes, interfaces e métodos parametrizados por tipos, em contraposição aos métodos que são parametrizados por variáveis. Isso cria a noção similar às funções de parâmetro formal” e “parâmetro real”. Em tempo de compilação serão feitas verificações não só da sintaxe dos definições com uso de parâmetros formais mas também das “invocações” usando parâmetros reais.

 

O programa abaixo só tem utilidade para ilustrar o conceito:

class C<T>{}

class menor{

  public static void main(String[] arg){

    C<String> v1=new C<String>();

    System.out.println("ola");

  }

}

No programa acima a classe C tem sua definição parametrizada pelo “parâmetro formal” T (o menor e maior se assemelham a um abre parênteses). A invocação da definição utiliza o tipo String como “parâmetro real”.