Parameta Inapita nini katika Java?
Parameta Inapita nini katika Java?

Video: Parameta Inapita nini katika Java?

Video: Parameta Inapita nini katika Java?
Video: Mbosso - Mtaalam (Official Music Video) 2024, Novemba
Anonim

Java hupitisha marejeleo ya kitu kwa thamani

Nini Java kweli haina na vitu ni kupita rejeleo la kitu kwa thamani. Kwa hivyo, kwa muhtasari, Java daima hupita kigezo kwa thamani ya zote mbili, primitives na kitu. Wakati wa kushughulika na kitu, hupitisha kumbukumbu ya kitu kwa thamani, na sio kitu yenyewe.

Kwa kuzingatia hili, unamaanisha nini kwa kupitisha parameta?

parameter kupita Utaratibu uliotumika kupitisha vigezo kwa utaratibu (subroutine) au kazi. Mbinu za kawaida ni kwa kupita thamani ya halisi kigezo (piga kwa thamani), au kwa kupita anwani ya eneo la kumbukumbu ambapo halisi kigezo imehifadhiwa (piga simu kwa kumbukumbu).

Vivyo hivyo, unapitishaje maadili kwa vitu kwenye Java? Java daima hupita hoja kwa thamani , SI kwa kumbukumbu. Kwa mfano wako bado uko kupita obj kwa yake thamani , sio kumbukumbu yenyewe. Ndani ya njia yako changeName, unakabidhi rejeleo lingine (la ndani), obj, kwa hiyo hiyo. kitu umeipitisha kama hoja.

Mtu anaweza pia kuuliza, tunaweza kupitisha njia kama paramu katika Java?

Katika Java 8, unaweza sasa kupita a njia kwa urahisi zaidi kwa kutumia Maneno ya Lambda na Njia Marejeleo. Kwanza, baadhi ya mandharinyuma: kiolesura cha kazi ni kiolesura ambacho kina moja na pekee moja dhahania njia , ingawa unaweza vyenye nambari yoyote ya chaguo-msingi mbinu (mpya ndani Java 8) na tuli mbinu.

Ni aina gani tofauti za vigezo?

Wapo wanne aina tofauti za vigezo katika C #: thamani vigezo (chaguo-msingi), rejeleo vigezo (ambayo hutumia kirekebishaji cha ref), pato vigezo (ambazo hutumia kirekebishaji cha nje), na kigezo safu (ambazo hutumia kirekebishaji cha params). Unaweza kutumia yoyote kati yao kwa thamani na kumbukumbu aina.

Ilipendekeza: