Ի՞նչ է Java-ում պարամետրի փոխանցումը:
Ի՞նչ է Java-ում պարամետրի փոխանցումը:

Video: Ի՞նչ է Java-ում պարամետրի փոխանցումը:

Video: Ի՞նչ է Java-ում պարամետրի փոխանցումը:
Video: HTML, CSS, JavaScript - Ի՞նչի համար են պետք 2024, Ապրիլ
Anonim

Java փոխանցում է օբյեկտի հղումը ըստ արժեքի

Ինչ Java իսկապես անում է օբյեկտների հետ անցնել օբյեկտի հղումը ըստ արժեքի. Այսպիսով, ամփոփելով. Java միշտ անցնում է պարամետր ըստ արժեքի և՛ պարզունակների, և՛ օբյեկտի համար: Օբյեկտի հետ գործ ունենալիս այն փոխանցում է օբյեկտի հղումը ըստ արժեքի, և ոչ թե բուն օբյեկտը:

Հաշվի առնելով սա՝ ի՞նչ նկատի ունեք պարամետրի անցում ասելով։

պարամետրի փոխանցում Օգտագործված մեխանիզմը անցնել պարամետրեր ընթացակարգին (ենթածրագրին) կամ գործառույթին: Ամենատարածված մեթոդները են դեպի անցնել իրականի արժեքը պարամետր (զանգել ըստ արժեքի), կամ դեպի անցնել հիշողության գտնվելու վայրի հասցեն, որտեղ փաստացի է պարամետր պահվում է (զանգել հղումով):

Նմանապես, ինչպե՞ս եք արժեքներ փոխանցում Java-ում գտնվող օբյեկտներին: Java միշտ անցնում է փաստարկներ կողմից արժեքը , ՈՉ հղումով։ Ձեր օրինակում դուք դեռ անցնող obj իր կողմից արժեքը , ոչ թե ինքնին հղումը։ Ձեր մեթոդի changeName-ի ներսում դուք վերագրում եք մեկ այլ (տեղական) հղում՝ obj, նույնին օբյեկտ դու այն փոխանցել ես որպես ան փաստարկ.

Կարելի է նաև հարցնել՝ կարո՞ղ ենք մեթոդը որպես պարամետր Java-ում փոխանցել:

Մեջ Java 8, դու կարող ես հիմա անցնել ա մեթոդ ավելի հեշտությամբ օգտագործելով Lambda արտահայտությունները և Մեթոդ Հղումներ. Նախ, որոշ նախապատմություն. ֆունկցիոնալ ինտերֆեյսը ինտերֆեյս է, որն ունի մեկ և միայն մեկ վերացական մեթոդ , չնայած դա կարող է պարունակում է ցանկացած թվով լռելյայն մեթոդները (նոր է Java 8) և ստատիկ մեթոդները.

Որո՞նք են տարբեր տեսակի պարամետրերը:

Կան չորս տարբեր տեսակի պարամետրեր C#-ում՝ արժեք պարամետրեր (կանխադրված), հղում պարամետրեր (որոնք օգտագործում են ref փոփոխիչ), ելք պարամետրեր (որոնք օգտագործում են դուրս փոփոխիչը), և պարամետր զանգվածներ (որոնք օգտագործում են params փոփոխիչ): Դուք կարող եք օգտագործել դրանցից որևէ մեկը ինչպես արժեքով, այնպես էլ հղումով տեսակները.

Խորհուրդ ենք տալիս: