Java on staattisesti kirjoitettu ja myös vahvasti kirjoitettu kieli, koska Javassa jokainen tietotyyppi (kuten kokonaisluku, merkki, heksadesimaali, pakattu desimaali ja niin edelleen) on ennalta määritetty osaksi ohjelmointikieltä ja kaikki vakiot tai muuttujat on määritetty tietty ohjelma on kuvattava jollakin Java-tietotyypeistä.
Tietotyypit Javassa
Tietotyypit Javassa ovat erikokoisia ja -arvoisia, jotka voidaan tallentaa muuttujaan, joka on tehty mukavuuden ja olosuhteiden mukaan peittämään kaikki testitapaukset. Javalla on kaksi luokkaa, joissa tietotyypit erotetaan
- Primitiivinen tietotyyppi: kuten boolean, char, int, short, byte, long, float ja double
- Ei-primitiivinen tietotyyppi tai objektitietotyyppi: kuten merkkijono, taulukko jne.

nimisopimus java
Primitiiviset tietotyypit Javassa
Primitiiviset tiedot ovat vain yksittäisiä arvoja, eikä niillä ole erityisiä ominaisuuksia. Primitiivisiä tietotyyppejä on 8. Ne on kuvattu alla taulukkomuodossa seuraavasti:
| Tyyppi | Kuvaus | Oletus | Koko | Esimerkki Literaalit | Arvoalue |
|---|---|---|---|---|---|
| boolean | totta vai tarua | väärä | 1 bittiä | totta, valhetta | totta, valhetta |
| tavu | kaksikko-komplementti kokonaisluku | 0 | 8 bittiä | (ei mitään) | -128-127 |
| hiiltyä | Unicode-merkki | u0000 | 16 bittiä | 'a', 'u0041', '101', '', '', ' ', 'b' | merkit edustavat ASCII-arvoja 0-255 |
| lyhyt | kaksikko-komplementti kokonaisluku | 0 | 16 bittiä | (ei mitään) | -32 768 - 32 767 |
| int | kaksikko-komplementti kokonaisluku | 0 | 32 bittiä | -2,-1,0,1,2 | -2 147 483 648 to 2,147,483,647 |
| pitkä | kaksikko-komplementti kokonaisluku | 0 | 64 bittiä | -2L,-1L,0L,1L,2L | -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 |
| kellua | IEEE 754 liukuluku | 0,0 | 32 bittiä | 1.23e100f , -1.23e-100f , .3f ,3.14F | 7 desimaalin tarkkuudella |
| kaksinkertainen | IEEE 754 liukuluku | 0,0 | 64 bittiä | 1.23456e300d , -123456e-300d , 1e1d | 16 desimaalin tarkkuudella |
Keskustellaan ja toteutetaan jokaista seuraavista tietotyypeistä, jotka ovat seuraavat:
1. Boolen tietotyyppi
Boolen tietotyyppi edustaa vain yhtä bittiä tietoa joko totta tai tarua jonka on tarkoitus edustaa logiikan ja Boolen algebran kahta totuusarvoa, mutta boolen tietotyypin koko on virtuaalikoneesta riippuvainen . Boolean-tyypin arvoja ei muunneta implisiittisesti tai eksplisiittisesti (heittojen kanssa) millekään muulle tyypille. Mutta ohjelmoija voi helposti kirjoittaa muunnoskoodin.
Syntaksi:
boolean booleanVar;>
Koko: Riippuu virtuaalikoneesta
2. Tavutietotyyppi
Tavutietotyyppi on 8-bittinen etumerkillä varustettu kahden komplementin kokonaisluku. Tavutietotyyppi on hyödyllinen muistin säästämiseksi suurissa taulukoissa.
Syntaksi:
byte byteVar;>
Koko: 1 tavu (8 bittiä)
taulukkomerkkijono kohdassa c
3. Lyhyt tietotyyppi
Lyhyt tietotyyppi on 16-bittinen etumerkillä varustettu kahden komplementin kokonaisluku. Kuten tavu, käytä oikosulkua muistin säästämiseen suurissa taulukoissa tilanteissa, joissa muistin säästöillä on todella merkitystä.
Syntaksi:
short shortVar;>
Koko: 2 tavua (16 bittiä)
4. Kokonaislukutietotyyppi
Se on 32-bittinen etumerkillä varustettu kahden komplementin kokonaisluku.
Syntaksi:
int intVar;>
Koko: 4 tavua (32 bittiä)
Muistaa: Java SE 8:ssa ja uudemmissa voimme käyttää int-tietotyyppiä edustamaan etumerkitöntä 32-bittistä kokonaislukua, jonka arvo on alueella [0, 232-1]. Käytä Integer-luokkaa käyttääksesi int-tietotyyppiä etumerkittömänä kokonaislukuna.
5. Pitkä tietotyyppi
Pitkän valikoima on melko suuri. Pitkä tietotyyppi on 64-bittinen kahden komplementin kokonaisluku, ja se on hyödyllinen tilanteissa, joissa int-tyyppi ei ole tarpeeksi suuri säilyttämään halutun arvon. Pitkän tietotyypin koko on 8 tavua (64 bittiä).
Syntaksi:
long longVar;>
Muistaa: Java SE 8:ssa ja uudemmissa versioissa voit käyttää pitkää tietotyyppiä edustamaan etumerkitöntä 64-bittistä, jonka vähimmäisarvo on 0 ja enimmäisarvo 2.64-1. Long-luokka sisältää myös menetelmiä, kuten vertaamalla Unsigned, jakamalla Unsigned, jne. tukemaan aritmeettisia operaatioita etumerkittömälle pitkälle.
6. Float Data Type
Float-tietotyyppi on yhden tarkkuuden 32-bittinen IEEE 754 liukuluku. Käytä liukulukua (tuplaarvon sijaan), jos haluat säästää muistia suurissa liukulukutaulukoissa. Float-tietotyypin koko on 4 tavua (32 bittiä).
Syntaksi:
javascript pudotusvalikosta
float floatVar;>
7. Kaksoistietotyyppi
Kaksoistietotyyppi on kaksinkertainen tarkkuus 64-bittinen IEEE 754 liukuluku. Desimaaliarvoille tämä tietotyyppi on yleensä oletusvalinta. Kaksoistietotyypin koko on 8 tavua tai 64 bittiä.
Syntaksi:
double doubleVar;>
Huomautus: Sekä float- että kaksoistietotyypit on suunniteltu erityisesti tieteellisiin laskelmiin, joissa approksimaatiovirheet ovat hyväksyttäviä. Jos tarkkuus on tärkein huolenaihe, on suositeltavaa olla käyttämättä näitä tietotyyppejä ja käyttää sen sijaan BigDecimal-luokkaa.
On suositeltavaa käydä läpi pyöristää virheet javassa.
8. Char Data Type
Char-tietotyyppi on yksi 16-bittinen Unicode-merkki, jonka koko on 2 tavua (16 bittiä).
Syntaksi:
char charVar;>
Miksi Javan merkin koko on 2 tavua?
Joten muut kielet, kuten C/C++, käyttävät vain ASCII-merkkejä, ja kaikkien ASCII-merkkien esittämiseen riittää 8 bittiä. Mutta Java käyttää Unicode-järjestelmä, ei ASCII-koodijärjestelmä ja Unicode-järjestelmän edustamiseen 8 bittiä ei riitä edustamaan kaikkia merkkejä, joten Java käyttää 2 tavua merkkeihin. Unicode määrittelee täysin kansainvälisen merkistön, joka voi edustaa useimpia maailman kirjoitettuja kieliä. Se on yhdistelmä kymmeniä merkistöjä, kuten latina, kreikka, kyrillinen, katakana, arabia ja monia muita.
Esimerkki:
Java
// Java Program to Demonstrate Char Primitive Data Type> // Class> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// Creating and initializing custom character> >char> a =>'G'>;> >// Integer data type is generally> >// used for numeric values> >int> i =>89>;> >// use byte and short> >// if memory is a constraint> >byte> b =>4>;> >// this will give error as number is> >// larger than byte range> >// byte b1 = 7888888955;> >short> s =>56>;> >// this will give error as number is> >// larger than short range> >// short s1 = 87878787878;> >// by default fraction value> >// is double in java> >double> d =>4.355453532>;> >// for float use 'f' as suffix as standard> >float> f =>4>.7333434f;> >// need to hold big range of numbers then we need> >// this data type> >long> l =>12121>;> >System.out.println(>'char: '> + a);> >System.out.println(>'integer: '> + i);> >System.out.println(>'byte: '> + b);> >System.out.println(>'short: '> + s);> >System.out.println(>'float: '> + f);> >System.out.println(>'double: '> + d);> >System.out.println(>'long: '> + l);> >}> }> |
>
piilotetut sovellukset tällä laitteella
>Lähtö
char: G integer: 89 byte: 4 short: 56 float: 4.7333436 double: 4.355453532 long: 12121>
Ei-primitiiviset tietotyypit tai viitetietotyypit
The Viitetietotyypit sisältää muuttujaarvojen muistiosoitteen, koska viitetyypit eivät tallenna muuttujan arvoa suoraan muistiin. Ne ovat merkkijonoja, objekteja, taulukoita jne.
1. Jouset
jouset määritellään merkkijonoksi. Ero merkkijonon ja merkkijonon välillä Javassa on se, että merkkijono on suunniteltu pitämään merkkijono yhdessä muuttujassa, kun taas merkkijono on kokoelma erillisiä merkkityyppisiä kokonaisuuksia. Toisin kuin C/C++, Java-merkkijonoja ei päätetä nollamerkillä.
Syntaksi: Merkkijonon ilmoittaminen
= ;>
Esimerkki:
// Declare String without using new operator String s = 'techcodeview.com'; // Declare String using new operator String s1 = new String('techcodeview.com');> 2. Luokka
A luokkaa on käyttäjän määrittämä suunnitelma tai prototyyppi, josta objektit luodaan. Se edustaa joukkoa ominaisuuksia tai menetelmiä, jotka ovat yhteisiä kaikille samantyyppisille objekteille. Yleensä luokkailmoitukset voivat sisältää nämä komponentit seuraavassa järjestyksessä:
- Muokkaimet : Luokka voi olla julkinen tai sillä voi olla oletuskäyttöoikeudet. Viitata pääsymäärityksiä luokille tai käyttöliittymille Javassa
- Luokan nimi: Nimen tulee alkaa alkukirjaimella (yleensä isolla kirjaimella).
- Superluokka (jos sellainen on): Luokan vanhemman (superluokan) nimi, jos sellainen on, jota edeltää avainsana extends. Luokka voi laajentaa (alaluokkaa) vain yhtä vanhempaa.
- Liitännät (jos on): Pilkuilla eroteltu luettelo luokan toteuttamista liitännöistä, jos sellaisia on ja jota edeltää avainsana implements. Luokka voi toteuttaa useamman kuin yhden käyttöliittymän.
- Runko: Luokan runkoa ympäröivät aaltosulut, { }.
3. Objekti
An Esine on olio-ohjelmoinnin perusyksikkö ja edustaa tosielämän kokonaisuuksia. Tyypillinen Java-ohjelma luo monia objekteja, jotka, kuten tiedät, ovat vuorovaikutuksessa menetelmien avulla. Objekti koostuu:
- Osavaltio : Sitä edustavat objektin attribuutit. Se heijastaa myös kohteen ominaisuuksia.
- Käyttäytyminen : Sitä edustavat objektin menetelmät. Se heijastaa myös kohteen reaktiota muihin esineisiin.
- Identiteetti : Se antaa objektille ainutlaatuisen nimen ja mahdollistaa yhden objektin vuorovaikutuksen muiden objektien kanssa.
4. Käyttöliittymä
Kuten luokka, an käyttöliittymä voi sisältää menetelmiä ja muuttujia, mutta rajapinnassa ilmoitetut menetelmät ovat oletusarvoisesti abstrakteja (vain menetelmän allekirjoitus, ei runkoa).
- Liitännät määrittelevät, mitä luokan on tehtävä, ei miten. Se on luokan suunnitelma.
- Käyttöliittymässä on kyse ominaisuuksista, kuten Player voi olla käyttöliittymä ja minkä tahansa luokan toteuttavan Playerin on kyettävä (tai sen täytyy toteuttaa) move(). Joten se määrittää joukon menetelmiä, jotka luokan on toteutettava.
- Jos luokka toteuttaa rajapinnan eikä tarjoa menetelmäkappaleita kaikille rajapinnassa määritetyille funktioille, luokka on määritettävä abstraktiksi.
- Esimerkki Java-kirjastosta on Vertailun käyttöliittymä . Jos luokka toteuttaa tämän rajapinnan, sitä voidaan käyttää kokoelman lajitteluun.
5. Joukko
An Array on ryhmä samantyyppisiä muuttujia, joihin viitataan yleisellä nimellä. Javan taulukot toimivat eri tavalla kuin C/C++:ssa. Seuraavassa on joitakin tärkeitä kohtia Java-taulukoista.
- Javassa kaikki taulukot allokoidaan dynaamisesti. (käsitelty alla)
- Koska taulukot ovat Java-objekteja, voimme löytää niiden pituuden jäsenen pituuden avulla. Tämä eroaa C/C++:sta, josta löydämme pituuden koon mukaan.
- Java-taulukkomuuttuja voidaan myös ilmoittaa muiden muuttujien tapaan käyttämällä []-merkkiä tietotyypin jälkeen.
- Matriisin muuttujat ovat järjestyksessä ja jokaisella on 0:lla alkava indeksi.
- Java-taulukkoa voidaan käyttää myös staattisena kenttänä, paikallisena muuttujana tai menetelmäparametrina.
- The koko taulukon on määritettävä int-arvolla, ei pitkällä tai lyhyellä.
- Taulukkotyypin suora superluokka on Object.
- Jokainen taulukkotyyppi toteuttaa rajapinnat Kloonattavissa ja java.io.Serialoitavissa .
Java-tietotyyppejä koskevat usein kysytyt kysymykset
1. Mitä ovat Java-tietotyypit?
Tietotyypit ovat erikokoisia ja -arvoisia, ja ne voidaan tallentaa muuttujaan, joka on tehty mukavuuden ja olosuhteiden mukaan peittämään kaikki testitapaukset.
2. Mitkä ovat Javassa käytettävät 8 tietotyyppiä?
Javassa on 8 tärkeintä primitiivistä tietotyyppiä, kuten alla mainitaan:
- boolean
- tavu
- hiiltyä
- lyhyt
- int
- pitkä
- kellua
- kaksinkertainen
3. Mikä on primitiivinen tyyppi Javassa?
Primitiiviset tietotyypit ovat Java-tyyppejä, jotka voivat tallentaa yhden arvon eivätkä tarjoa mitään erityisiä ominaisuuksia.
4. Miksi char käyttää 2 tavua Javassa ja mikä on u0000?
Char käyttää 2 tavua javassa, koska se käyttää Unicode-järjestelmää ASCII-järjestelmän sijaan. u000 on Unicode-järjestelmän alin alue.
Tarkista: Tietotyyppi Java-tietokilpailussa