פונקציית Perl Bless

Pwnqzyyt Perl Bless



תחביר התכנות מונחה העצמים ב- Perl שונה מעט משפות התכנות המונחה עצמים הסטנדרטיות כמו Java, C++, Python וכו'. מילת המפתח החבילה משמשת ב- Perl כדי להגדיר מחלקה ב- Perl. הצהרת האובייקט והשיטה ב- Perl דומות להצהרת המשתנה והתת-שגרה אך השיטה להכריז על אובייקט ב- Perl לקשר בין ההפניה והרפרנט שונה משפות תכנות אחרות. הפונקציה bless() משמשת לביצוע משימה זו. השימושים בפונקציית bless לביצוע תכנות מונחה עצמים ב- Perl מוצגים במדריך זה.

תחביר:

התחביר של הפונקציה 'ברך' ניתן להלן. ניתן להשתמש בפונקציה זו עם ארגומנט אחד או שני ארגומנטים. בדרך כלל, פונקציה זו משמשת עם שני ארגומנטים כאשר הארגומנט הראשון הוא משתנה ההפניה והארגומנט השני הוא שם המחלקה שאליו מתייחס הארגומנט הראשון. כאשר משתמשים בו עם ערך ארגומנט אחד, משתנה ההתייחסות מתייחס לחבילה הנוכחית.







ברוך רפ

אוֹ



ברוך רפ , שם הכיתה

דוגמאות שונות של הפונקציה Bless()

השימושים בפונקציה bless() במספר דרכים מוצגים בחלק זה של המדריך.



דוגמה 1: שימוש במחלקה ובאובייקט הפשוטים

בדוגמה זו, החבילה בשם 'ספר' מכילה תת שגרה שפועלת כמו שיטת הבנאי של המחלקה. כאן, הפונקציה 'bless' משמשת כדי לקשר את המשתנים עם שם המחלקה שסופק בזמן הקריאה למתודה Init() .





#!/usr/bin/perl

להשתמש קפדני ;
להשתמש אזהרות ;
השתמש ב-5.34.0 ;

#הגדר את החבילה
חבילה ספר ;
#הגדר את הבנאי
תחת Init
{
#אתחול שם הכיתה
$className שלי = מִשׁמֶרֶת ;
#אתחל את המשתנים
משתני $ שלי = {
'שם הספר' => מִשׁמֶרֶת ,
'שם המחבר' => מִשׁמֶרֶת ,
'שנת פרסום' => מִשׁמֶרֶת ,
'מחיר' => מִשׁמֶרֶת
} ;

#הגדר את ההפניה עם הרפרנט
לברך משתנים $ , $className ;
#החזר את משתנה ההתייחסות
לַחֲזוֹר משתנים $ ;
}

#צור אובייקט של הכיתה
$bookObj שלי = ספר איניט ( 'לומדים פרל' , 'רנדל ל. שוורץ' , 1993 , ארבע חמש ) ;

#הדפס את הערכים של משתני המחלקה
אמר 'פרטי הספר:' ;
אמר ' \n שם הספר: $bookObj->{'BookName'}' ;
אמר 'שם המחבר: $bookObj->{'AuthorName'}' ;
אמר 'שנת פרסום: $bookObj->{'PublishedYear'}' ;
אמר 'מחיר: \$ $bookObj->{'Price'}' ;

תְפוּקָה:

הפלט הבא מופיע לאחר ביצוע הסקריפט:



  p1

דוגמה 2: שימוש במחלקה ובאובייקט עם מספר שיטות

בדוגמה זו, החבילה בשם 'מוצרים' מכילה שתי שיטות. שיטה אחת היא Init() המשמשת לאתחל את המשתנים הדרושים ולהתייחס למשתנים עם שם המחלקה באמצעות הפונקציה 'bless'. שיטה נוספת שהיא calculate_price() משמשת לחישוב מחיר ההנחה של המוצר.

#!/usr/bin/perl

להשתמש קפדני ;
להשתמש אזהרות ;
השתמש ב-5.34.0 ;

#הגדר את החבילה
מוצר חבילה ;
משתני $ שלי = { } ;

#הגדר את הבנאי
תחת Init
{
#אתחול שם הכיתה
$className שלי = מִשׁמֶרֶת ;
#אתחל את המשתנים
משתנים $ = {

'תְעוּדַת זֶהוּת' => מִשׁמֶרֶת ,
'שֵׁם' => מִשׁמֶרֶת ,
'מחיר' => מִשׁמֶרֶת

} ;

#הגדר את ההפניה עם הרפרנט
לברך משתנים $ , $className ;
#החזר את משתנה ההתייחסות
לַחֲזוֹר משתנים $ ;
}

#הצהרה שיטה לחישוב מחיר הנחה
sub calculate_price
{

מחיר_הנחה ב$ שלי = $משתנים- > { 'מחיר' } - משתנים $- > { 'מחיר' } * 0.1 ;
אמר 'מחיר הנחה: \$ $discount_price' ;

}

#צור אובייקט של הכיתה
$proObj שלי = Init מוצר ( '6745' , 'צג של Dell' , חמישים ) ;

#הדפס את הערכים של משתני המחלקה
אמר 'מידע על המוצר לאחר 10 \% הנחה: ' ;
אמר ' \n מזהה: $proObj->{'Id'}' ;
אמר 'שם: $proObj->{'Name'}' ;
אמר 'מחיר מקורי: \$ $proObj->{'Price'}' ;

#קרא לשיטת האובייקט
$proObj- > חשב_מחיר ( ) ;

תְפוּקָה:

הפלט הבא מופיע לאחר ביצוע הסקריפט:

  p2

דוגמה 3: שימוש בכיתה על ידי יצירת מודול

בדוגמה זו, מודול Perl המוגדר על ידי המשתמש נוצר בקובץ נפרד בשם 'CalPower.pm' שבו נעשה שימוש בפונקציית 'bless'. צור קובץ זה עם הסקריפט הבא של Perl. מודול זה מחשב את ה-'x נ ' שבו הערכים של 'x' ו-'n' מסופקים מהסקריפט של Perl שבו מודול זה מיובא.

#!/usr/bin/perl

להשתמש קפדני ;
להשתמש אזהרות ;
השתמש ב-5.34.0 ;

#הגדר את שם החבילה
חבילת CalPower ;

#הגדר את הבנאי
תחת Init
{
$className שלי = מִשׁמֶרֶת ;
$var שלי =
{
מספר => מִשׁמֶרֶת ,
כּוֹחַ => מִשׁמֶרֶת
} ;

לברך $var , $className ;
לַחֲזוֹר $var ;

}

#הגדר את השיטה לחישוב ערך ההספק
תת חישוב
{
$var שלי = מִשׁמֶרֶת ;
התוצאה $ שלי = $var- > { 'מספר' } ;
ל ( ה-$i שלי = 1 ; $i < $var- > { 'כּוֹחַ' } ; $i++ )
{
תוצאה $ = $var- > { 'מספר' } * תוצאה $ ;
}
לַחֲזוֹר תוצאה $ ;

}

צור קובץ Perl עם הסקריפט הבא שבו מודול 'CalPower' מיובא כדי לחשב את ההספק על סמך ערך הקלט שנלקח מהמשתמש.

#!/usr/bin/perl

להשתמש קפדני ;
להשתמש אזהרות ;
השתמש ב-5.34.0 ;
השתמש ב-CalPower ;

#קח את ערך הבסיס
הדפס 'הזן את הערך של x:' ;
chomp ( $x שלי = <> ) ;
#קח את עמק הכוח
הדפס 'הזן את הערך של n:' ;
chomp ( $n שלי = <> ) ;

#צור אובייקט של הכיתה
$Obj שלי = אינט CalPower ( $x , $n ) ;

#הדפס את ערך ההספק המחושב
הדפס '$x בחזקת $n הוא' ;
אמור $Obj- > לחשב ( ) ;

תְפוּקָה:

הפלט הבא מופיע לאחר ביצוע הסקריפט:

  p3

סיכום

השימושים בפונקציית 'הברך' בפרל מוצגים במדריך זה על ידי יצירת חבילה באותו קובץ Perl ויצירת מודול בקובץ אחר.