Ola Galera, eu sei que toda duvida é bem vinda, tomará que a minha não seja diferente.
Lá vai:
Gostaria de saber quais são as diferenças entre cast, binding e autoboxing?
Desde já agradeço.
Ola Galera, eu sei que toda duvida é bem vinda, tomará que a minha não seja diferente.
Lá vai:
Gostaria de saber quais são as diferenças entre cast, binding e autoboxing?
Desde já agradeço.
São coisas distintas
Cast, é vc fazer uma conversão de um tipo mais amplo, p/ um mais restrito. Tipo, se você tem um float vc pode extrair a parte inteira do mesmo e salva-lo em uma variavel inteira fazendo um cast:
int num = (int)3.14;
Obs: Casts tb funcionam em uma hierarquia de objetos
Autoboxing é um conceito novo que surgiu com o java 1.5. É simplesmente envolver um tipo primitivo em um objeto. Isso é útil quando vc esta por exemplo trabalhando com collections, onde vc poderia somente querer armazenar objetos em um arrayList por exemplo. Aí surgi o problema, como colocar um tipo primitivo nessa coleção? Simples, faça o autoboxing desse tipo primitivo no seu respectivo “invólucro” (aka wrappers)! entendis?
Binding (ligação) Pode ter dois sentindos: O primeiro é no sentido de ligar níveis diferentes de código, funcionando como uma camada intermediária. Tipo, existe um “binding” para java acessar OpenGL, DirectX. O outro sentido seria o empregado em OO de Late binding (ligação tardia), mecanismo utilizado no polimorfismo( princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma assinatura (lista de parâmetros e retorno) mas comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. A decisão sobre qual o método que deve ser selecionado, de acordo com o tipo da classe derivada, é tomada em tempo de execução, através do mecanismo de ligação tardia - wikipedia)
da uma olhada nesse tutorial sobre autoboxing do GUJ : http://www.guj.com.br/java.tutorial.artigo.146.1.guj
Value LuksS, minha duvida maior era a respeito de binding,
pois eu nunca tinha ouvido falar sobre esse assunto.