logo

Tipografia en Java

La difusió de tipus a Java és el procés de conversió d'un tipus de dades a un altre tipus de dades mitjançant l'operador de càsting. Quan assigneu un valor d'un tipus de dades primitiu a un altre tipus, això es coneix com a conversió de tipus. Per permetre l'ús d'una variable d'una manera específica, aquest mètode requereix indicar explícitament al compilador Java que tracti una variable d'un tipus de dades com una variable d'un altre tipus de dades.

Sintaxi:



 variableName = () value;>

Tipus de Tipus Casting

Hi ha dos tipus de Casting de tipus a Java:

alfabet a nombre
  • Tipus d'ampliació de fosa
  • Casting de tipus estret

Tipus d'ampliació de fosa

Un tipus de dades inferior es transforma en un de més alt mitjançant un procés conegut com a càsting de tipus d'ampliació. La casting de tipus implícit i l'eliminació són alguns dels noms per a això. Es produeix de manera natural. Com que no hi ha possibilitat de pèrdua de dades, és segur. La fosa del tipus d'ampliació es produeix quan:

  • El tipus de destinació ha de ser més gran que el tipus d'origen.
  • Tots dos tipus de dades han de ser compatibles entre si.

Sintaxi:



larger_data_type variable_name = smaller_data_type_variable;>


Java






// Java program to demonstrate Widening TypeCasting> import> java.io.*;> > class> GFG {> >public> static> void> main(String[] args)> >{> >int> i =>10>;> > >// Wideing TypeCasting (Automatic Casting)> >// from int to long> >long> l = i;> > >// Wideing TypeCasting (Automatic Casting)> >// from int to double> >double> d = i;> > >System.out.println(>'Integer: '> + i);> >System.out.println(>'Long: '> + l);> >System.out.println(>'Double: '> + d);> >}> }>

string jsonobject
>

>

Sortida

Integer: 10 Long: 10 Double: 10.0>

Casting de tipus estret

El procés de reduir la mida d'un tipus de dades més gran a un de més petit es coneix com a càsting de tipus reduït. L'emissió o l'emissió de tipus explícit són altres noms per a això. No només passa per si mateix. Si no ho fem explícitament, es produirà un error en temps de compilació. Reduir l'emissió de tipus no és segur perquè es pot produir una pèrdua de dades a causa del rang més reduït de valors permesos del tipus de dades inferior. Un operador de fosa ajuda en el procés de càsting explícit.

Sintaxi:

smaller_data_type variable_name = (smaller_data_type) larger_data_type_variable;>

Exemple:

Java


sincronitzar java



// Java Program to demonstrate Narrow type casting> import> java.io.*;> > class> GFG {> >public> static> void> main(String[] args)> >{> >double> i =>100.245>;> > >// Narrowing Type Casting> >short> j = (>short>)i;> >int> k = (>int>)i;> > >System.out.println(>'Original Value before Casting'> >+ i);> >System.out.println(>'After Type Casting to short '> >+ j);> >System.out.println(>'After Type Casting to int '> >+ k);> >}> }>

>

>

Sortida

Original Value before Casting100.245 After Type Casting to short 100 After Type Casting to int 100>

Tipus de càsting explícit

Principalment hi ha dos tipus de càsting explícit:

  • Upcasting explícit
  • Downcasting explícit

Upcasting explícit

Upcasting és el procés de llançar un subtipus a un supertipus en la direcció ascendent de l'arbre d'herència. Quan una variable de referència de superclasse fa referència a un objecte de subclasse, s'activa un procés automàtic sense cap esforç addicional.

Exemple:

Java

llançar una cadena a int java




// Java Program to demonstrate Explicit Upcasting> import> java.io.*;> > class> Animal {> >public> void> makeSound()> >{> >System.out.println(>'The animal makes a sound'>);> >}> }> > class> Dog>extends> Animal {> >public> void> makeSound()> >{> >System.out.println(>'The dog barks'>);> >}> > >public> void> fetch()> >{> >System.out.println(>'The dog fetches a ball'>);> >}> }> class> GFG {> >public> static> void> main(String[] args)> >{>// Upcasting> >Animal animal =>new> Dog();> >// Calls the overridden method in Dog class> >animal.makeSound();> >// This would give a compile error as fetch() is not> >// a method in Animal class> >// animal.fetch();> >}> }>

>

>

Sortida

The dog barks>

Downcasting explícit

Quan un tipus de subclasse fa referència a un objecte de la classe pare, el procés s'anomena downcasting. Si es fa manualment, el compilador emet un error ClassCastException en temps d'execució. Només es pot fer utilitzant l'operador instanceof. Només és possible el descens d'un objecte que ja ha estat pujat.

Exemple:

ipconfig gratuït

Java




// Java Program to demonstrate Explicit downcasting> import> java.io.*;> class> Animal {> >public> void> eat()> >{> >System.out.println(>'The animal is eating.'>);> >}> }> > class> Cat>extends> Animal {> >public> void> meow()> >{> >System.out.println(>'The cat is meowing.'>);> >}> }> > class> GFG {> >public> static> void> main(String[] args)> >{> >Animal animal =>new> Cat();> >animal.eat();> > >// Explicit downcasting> >Cat cat = (Cat)animal;> >cat.meow();> >}> }>

>

>

Sortida

The animal is eating. The cat is meowing.>