Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Java Efetivo (livro)
Java Efetivo (livro)

Posted on • Edited on

     

Priorize os tipos genéricos

Item 29: Priorize os tipos genéricos (Java Efetivo)

É importante priorizar o uso de tipos genéricos em projetos Java.
A implementação genérica de uma pilha é discutida aqui, ressaltando a necessidade de parametrização para melhorar a segurança e a legibilidade do código.

Ao transformar uma classe não genérica em genérica, é necessário substituir todos os usos do tipo Object pelo parâmetro de tipo apropriado.

A criação de um array de um tipo genérico pode causar problemas de compilação devido à falta de reificação do tipo. São apresentadas duas maneiras de resolver esse problema: a primeira envolve a criação de um array de Object e a supressão da advertência, enquanto a segunda envolve a alteração do tipo do array para Object[].

São discutidos os prós e contras de cada técnica de eliminação do erro de criação de array genérico.

Em contras:
Alguns exemplos de problemas são apresentados nos exemplos do livro, a seguir:

Exemplo de pilha normal
Image description

Com Generics
Image description

Alguns error e problemas que podem ocorrer são abordados a seguir:

Image description

Image description

Image description

Image description

Image description

Outro exemplo de uso da classe genérica Stack é fornecido para ilustrar a eliminação da necessidade de cast explícito.
Embora seja recomendado preferir listas sobre arrays, algumas situações exigem o uso de arrays em tipos genéricos.

Image description

Limitações dos tipos genéricos do Java são discutidas, como a impossibilidade de criar uma pilha de tipos primitivos.
Tipos genéricos com parâmetros de tipo limitado são introduzidos, exemplificados pela classe DelayQueue.

Conclui-se que tipos genéricos tornam o código mais seguro e legível, especialmente ao evitar a necessidade de casts explícitos no código cliente. Recomenda-se que tipos existentes sejam transformados em genéricos sempre que possível para melhorar a experiência do usuário sem quebrar a compatibilidade com clientes existentes.

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Resumos do Livro Java Efetivo feitos pro grupo de estudos Clube do Livro na comunidade de Java Girls Jug.
  • Location
    Florianópolis
  • Education
    Streets
  • Work
    Cibercafé
  • Joined

More fromJava Efetivo (livro)

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp