Java'да Параметр өткөрүү деген эмне?
Java'да Параметр өткөрүү деген эмне?

Video: Java'да Параметр өткөрүү деген эмне?

Video: Java'да Параметр өткөрүү деген эмне?
Video: Синхрондолгон vs ReadWriteLock vs StampedLock [Java Multithreading] 2024, Май
Anonim

Java мааниси боюнча объекттин шилтемесин өткөрөт

Эмне Java чынында эле объектилер менен иштейт өтүү мааниси боюнча объекттин шилтемеси. Ошентип, кыскача айтканда, Java дайыма өтөт параметр примитивдер жана объект үчүн мааниси боюнча. Объект менен иштөөдө ал объекттин өзүнө эмес, мааниси боюнча объекттин шилтемесин өткөрүп берет.

Муну эске алуу менен, параметрди өткөрүү деген эмнени билдирет?

параметр өтүүдө колдонулган механизм өтүү параметрлери процедурага (подпрограммага) же функцияга. Эң кеңири таралган ыкмалар болуп саналат чейин өтүү чыныгы наркы параметр (наркы боюнча чалуу), же өтүү эстутум жайгашкан жердин дареги параметр сакталат (маалымат боюнча чалуу).

Ошо сыяктуу эле, сиз Javaдагы объекттерге баалуулуктарды кантип өткөрүп бересиз? Java дайыма өтөт аргументтер тарабынан баалуулук , шилтеме боюнча ЭМЕС. Сиздин мисалда сиз дагы эле өтүп жатат анын менен obj баалуулук , шилтеменин өзү эмес. ChangeName методуңуздун ичинде сиз башка (локалдык) шилтемени, obj, ошол эле шилтемеге дайындап жатасыз объект деп өттүңүз аргумент.

Ошондой эле суроо берилиши мүмкүн, биз Java'да параметр катары методду өткөрө алабызбы?

In Java 8, сенин колуңдан келет азыр өтүү а ыкмасы Ламбда туюнтмаларын колдонуу оңой жана Метод Шилтемелер. Биринчиден, кээ бир фон: функционалдык интерфейс - бул бар интерфейс бир жана бир гана бир абстракттуу ыкмасы , бирок болот демейки каалаган санын камтыйт ыкмалары (жаңы Java 8) жана статикалык ыкмалары.

Параметрлердин кандай түрлөрү бар?

Төртөө бар параметрлердин ар кандай түрлөрү C# тилинде: маани параметрлери (демейки), шилтеме параметрлери (ref өзгөрткүчтү колдонгон), чыгаруу параметрлери (чыгаруучу өзгөрткүчтү колдонушат) жана параметр массивдер (парамдарды өзгөрткүчтү колдонушат). Сиз алардын каалаганын мааниси менен да, шилтемеси менен да колдоно аласыз түрлөрү.

Сунушталууда: