Què és Generics a Java? - Una guia per a principiants



Aquest article sobre els genèrics a Java donarà una breu informació sobre què són els genèrics java i els seus diversos tipus juntament amb exemples.

Penseu en un exemple en què hagueu de fer una llista dels éssers vius d’una localitat. Tant se val si és un ésser humà, un animal o una planta. Tot el que importa és un ésser viu. En aquest cas, els agruparia a tots com a 'éssers vius' i no els classificaria. De la mateixa manera, quan heu d’emmagatzemar algunes dades, el que us importa és el contingut i no el tipus de dades, i aquí és on utilitzeu Generics. Genèrics a és una característica d'idioma que permet l'ús de tipus i mètodes genèrics.

A continuació es mostra la llista de temes que tractaré en aquest article:





Què és Generics a Java?

Genèrics és un terme que denota un conjunt de característiques del llenguatge relacionades amb la definició i ús de tipus i mètodes genèrics. Els mètodes genèrics de Java difereixen dels mètodes i tipus de dades habituals. Abans de Generics, utilitzàvem el fitxer per emmagatzemar qualsevol tipus d’objectes, és a dir, no genèric . Ara, els genèrics obliguen a programador per emmagatzemar un tipus específic d’objectes.

Ara que ja sabeu què és Generics a Java, anem més enllà i entenem per què necessiteu Java Generics.



Per què Java Generics?

Si mireu el classes, observareu que la majoria de classes prenen paràmetres / arguments de tipus Object. Bàsicament, en aquesta forma, poden prendre qualsevol tipus de Java com a argument i retornar el mateix objecte o argument. Ho són essencialment heterogeni és a dir, no d’un tipus similar.

FrameworkHierarchy - Generics in Java - Edureka

De vegades, a l'aplicació Java, el tipus de dades de l'entrada no és fix. L'entrada pot ser un enter , a flotar o bé . Per assignar l'entrada al fitxer del tipus de dades adequat, s’havien de fer comprovacions prèvies. En l'enfocament tradicional, després de prendre l'entrada, es va comprovar el tipus de dades de l'entrada i es va assignar a la variable del tipus de dades adequat. Quan es va utilitzar aquesta lògica, es va augmentar la longitud del codi i el temps d'execució. Per evitar-ho, Es van introduir els genèrics . Quan utilitzeu Generics, els paràmetres del codi es comproven automàticament en el moment de la compilació i estableix el tipus de dades per defecte. Per tant, aquí és on necessiteu el concepte de genèrics a Java.



Ara que heu obtingut algunes idees sobre Generics, anem a seguir endavant i analitzem les diverses maneres de fer-hoEs poden aplicar genèrics al codi font.

què és la sessió a Java

Tipus de Java Generics

Hi ha quatre maneres diferents d’aplicar els genèrics a Java i són els següents:

  1. Classe de tipus genèric
  2. Interfície genèrica
  3. Mètode genèric
  4. Constructor genèric

Ara entenem com es poden aplicar genèrics a la classe de tipus en profunditat.

1. Classe de tipus genèric

Es diu que una classe és genèrica si declara una o més variables de tipus. Aquests tipus de variables es coneixen com a paràmetres de tipus del fitxer . Entenguem això amb l’ajut d’un exemple. A l'exemple següent, crearé una classe amb una propietat x i el tipus de propietat és un objecte.

class Genericclass {private Object x public void set (Object x) {this.x = x} public Object get () {return x}}

Aquí, una vegada que inicialitzeu la classe amb un tipus determinat, la classe només s'hauria d'utilitzar amb aquest tipus concret. Per exemple. Si voleu que una instància de la classe tingui el valor x de tipus ‘ Corda ', Llavors el programador hauria de configurar i obtenir l'únic tipus. Com que he declarat el tipus de propietat a Object, no hi ha manera d’aplicar aquesta restricció. Un programador pot configurar qualsevol objecte i pot esperar qualsevol tipus de valor de retorn obtenir mètode ja que tots els tipus Java són subtipus de classe.

Per aplicar aquest tipus de restricció, podem utilitzar els genèrics de la manera següent:

class Genericclass {// T significa 'Type' private T x public void set (T x) {this.x = x} public T get () {return x}}

Ara podeu estar segur que la classe no s’utilitzarà malament amb tipus incorrectes. Un exemple senzill de' Classe genèrica ”Té l’aspecte que es mostra a continuació:

Genericclass instance = new Genericclass () instance.set ('Edureka') instance.set (10) // Això augmentarà l'error de temps de compilació

Així és com funciona. Aixòl'analogia també és certa per a la interfície. Vegem ràpidament un exemple per entendre com es pot utilitzar la informació de tipus genèric a les interfícies de Java.

2. Interfície genèrica

An fa referència als tipus de dades abstractes. Permeten que es manipulin independentment dels detalls de la seva representació. A més, formen una jerarquia a idiomes. Comprenem com es pot aplicar el tipus genèric a les interfícies de Java.

// Interfície de definició d'interfície genèrica GenericInterface {T2 PerformExecution (T1 x) T1 ReverseExecution (T2 x)} // Una classe que implementa una classe d'interfície genèrica Genericclass implementa GenericInterface {public Integer PerformExecution (String x) {// codi d'execució} public String ReverseExecution ( Enter x) {// codi d'execució}}

Espero que hagueu pogut entendre com es pot aplicar Generics a classe de tipus i interfícies. Ara aprofundim en aquest article i entenem com és útil per a mètodes i constructors.

3. Mètodes genèrics

Els mètodes genèrics són molt similars a les classes genèriques. Es diferencien entre si en un sol aspecte que el L'abast o la informació de tipus només es troba dins del mètode. Els mètodes genèrics introdueixen els seus propis paràmetres de tipus.

tutorial pl sql per a principiants amb exemples

Anem a entendre-ho amb un exemple. A continuació es mostra un exemple d’un mètode genèric que es pot utilitzar per trobar totes les aparicions de paràmetres de tipus en una llista de variables.

public static int countAllOccurrences (T [] list, element T) {int count = 0 if (element == null) {for (T listElement: list) if (listElement == null) count ++} else {for (T listElement: list ) if (element.equals (listElement)) count ++} return count}

Si passa una llista de Cadena per cercar en aquest mètode, funcionarà bé. Però si proveu de trobar un número a la llista de cadenes, donarà un error de temps de compilació.

Aquesta analogia també és similar al constructor. Prenguem un exemple per al constructor genèric i comprenguem el seu funcionament.

4. Constructor genèric

A constructor és un bloc de codi que inicialitza l'objecte recentment creat. A constructor s'assembla a un mètode d'instància a J ava però no és un mètode ja que no té un tipus de retorn. El constructor té el mateix nom que la classe i té aquest aspecte a J ava codi. Prenem ara un exemple i entenem com funciona.

classe Dimensió {longitud privada T amplada privada T altura privada T // Dimensió pública del constructor genèric (longitud T, amplada T, alçada T) {super () this.length = length this.width = width this.height = height}}

A l’exemple anterior, el constructor de la classe Dimension té la informació de tipus. De manera que podeu tenir una instància de dimensió amb tots els atributs d’un sol tipus. Així doncs, és així com podeu utilitzar constructors de tipus genèrics. Espero que hagueu entès els tipus de genèrics a Java.

Ara anem més enllà i vegem els avantatges de Generics a Java.

Avantatges dels genèrics a Java

1. Reutilització del codi

Podeu compondre una estratègia o una classe o una una vegada i utilitzeu-lo per a qualsevol tipus o qualsevol forma que necessiteu.

com ordenar la matriu c ++

2. No és obligatori emetre tipus individuals

Bàsicament, heu recuperat informació de cada vegada, l'heu de tipografiar. La tipografia a cada tasca de recuperació és una migranya important. Per eradicar aquest enfocament, es van introduir els genèrics.

3. Implementació d’un algorisme no genèric

Pot calcular els algoritmes que funcionen en diversos tipus d’elements que també són segurs per al tipus.

Això era tot sobre els avantatges de Java Generics. Amb això, arribem al final d’aquest article sobre Generics in Java. Espero que us hagi resultat informatiu i us hagi ajudat a entendre Java Generics.

Consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. Estem aquí per ajudar-vos en tots els passos del vostre viatge, per convertir-vos en una pregunta a part d’aquestes entrevistes java, oferim un pla d’estudis dissenyat per a estudiants i professionals que vulguin ser desenvolupador de Java. El curs està dissenyat per donar-vos un avantatge en la programació de Java i formar-vos tant per conceptes bàsics com avançats de Java, juntament amb diversos marcs Java com Hibernate i Spring

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d’aquest “Generics in Java ' article i ens posarem en contacte amb vostè el més aviat possible.