"ตกลง มาลองวิธีอื่นกัน ฉันจะแสดงให้คุณเห็นว่าวิธีการโทรทำงานอย่างไร จากนั้นคุณลองกลับไปอ่านบทเรียนที่แล้วอีกครั้ง ตกลงไหม"
"มาทำกันเถอะ"
"เยี่ยมมาก ฉันจะบอกคุณเกี่ยวกับการเรียกใช้ฟังก์ชัน/เมธอดและค่าที่ส่งคืน (ค่าส่งคืน)"
"คำสั่งหรือคำสั่งถูกจัดกลุ่มเป็นเมธอดเพื่อให้สามารถดำเนินการเป็นบล็อกเดียว เช่น คำสั่งเชิงซ้อนเดี่ยว ในการทำเช่นนี้ คุณต้องเขียนชื่อเมธอด (ฟังก์ชัน) แล้วระบุอาร์กิวเมนต์ของเมธอดไว้ในวงเล็บ"
package com.codegym.lesson2;
public class MethodCall
{
public static void main(String[] args)
{
print4("I like to move it, move it.");
}
public static void print4(String s)
{
System.out.println(s);
System.out.println(s);
System.out.println(s);
System.out.println(s);
}
}
"ในตัวอย่างด้านบน เราเขียนฟังก์ชันที่จะแสดงสตริงที่ส่งผ่านบนหน้าจอสี่ครั้ง จากนั้นเราเรียกฟังก์ชันนั้นprint4
ในบรรทัดที่ 6"
"เมื่อโปรแกรมถึงบรรทัดที่ 6 มันจะข้ามไปที่บรรทัดที่ 9 กำหนดค่าให้'I like to move it, move it'
กับตัวแปร s"
"จากนั้นบรรทัดที่ 11-14 จะถูกดำเนินการ ฟังก์ชันจะเสร็จสิ้น และโปรแกรมจะทำงานต่อในบรรทัดที่ 7"
"ฉันเห็น."
"ไม่เพียงแต่คุณสามารถส่งอาร์กิวเมนต์ (ค่า) ไปยังฟังก์ชันเท่านั้น ฟังก์ชันยังสามารถส่งคืนผลลัพธ์ของงาน (ค่าที่ส่งคืน) ซึ่งทำได้ด้วยการส่งคืนคีย์เวิร์ด นี่คือลักษณะที่ปรากฏ:"
ตัวอย่างที่ 1
กำหนดจำนวนขั้นต่ำสองตัว
|
นี่คือวิธีการทำงาน:
|
"ฉันคิดว่ามันเริ่มสมเหตุสมผลแล้ว! โค้ดในคอลัมน์ซ้ายและขวาเหมือนกันจริงๆ เพียงแต่ว่าโค้ดทางซ้ายมีฟังก์ชันแบบสแตนด์อโลน"
"ฟังก์ชันจะคำนวณค่าหนึ่งๆ และใช้ return statement เพื่อส่งผ่านค่านั้นไปยังอะไรก็ตามที่เรียกมัน อย่างน้อยฉันก็เห็นอย่างนั้น"
"และคุณพูดถูก!"
"แต่ประเภทความว่างเปล่านี้คืออะไร?"
"บางฟังก์ชันทำบางอย่างโดยไม่ต้องคำนวณหรือส่งคืนค่าใดๆ เช่นmain() method ของเรา ประเภทการส่งคืนพิเศษ - void - ถูกสร้างขึ้นสำหรับฟังก์ชันดังกล่าว"
"ทำไมไม่ประกาศอะไรเลยถ้าฟังก์ชันไม่ส่งคืนอะไรเลย"
"จำได้ไหมว่าเราประกาศตัวแปรอย่างไร พิมพ์และชื่อ สำหรับฟังก์ชัน เราประกาศประเภท ชื่อ และวงเล็บ ชื่อฟังก์ชันตามด้วยวงเล็บคือวิธีที่คุณเรียกใช้ฟังก์ชัน"
"ดังนั้น การประดิษฐ์ 'ประเภทโมฆะ' จึงง่ายกว่าการแบ่งฟังก์ชันออกเป็นสองประเภท - ประเภทที่ส่งคืนค่าและประเภทที่ไม่คืนค่า"
"ถูกต้อง! คุณฉลาดจริงๆ ลูกชายของฉัน"
"เราจะส่งคืนประเภทโมฆะได้อย่างไร"
"เราไม่ทำ มันทำงานแบบนี้เมื่อเรียกใช้คำสั่ง return เครื่อง Java จะคำนวณค่าของนิพจน์ทางด้านขวาของคำว่า 'return' เก็บค่านี้ไว้ในส่วนพิเศษของหน่วยความจำ และสิ้นสุดทันที ฟังก์ชันค่าที่เก็บไว้จะถูกใช้เมื่อเรียกใช้ฟังก์ชันซึ่งเป็นผลลัพธ์ของการเรียกฟังก์ชันคุณสามารถดูได้จากตัวอย่างที่ฉันให้ไว้ก่อนหน้านี้"
"คุณหมายถึงส่วนที่แปลง int m = min(a, b) เป็น m = m2 ใช่ไหม"
"ใช่ หลังจากฟังก์ชันเสร็จสิ้น ทุกอย่างจะทำงานราวกับว่าค่าส่งคืนของฟังก์ชันถูกเขียนแทนที่ทำซ้ำวลีนี้ในใจของคุณ และดูโค้ดในตัวอย่างสุดท้าย "
"ฉันคิดว่ามันดูเหมือนง่ายเท่านั้น จริงๆแล้วมันยาก ฉันเข้าใจเพียงบางส่วนเท่านั้น"
"ไม่เป็นไรในการทดลองครั้งแรก คุณจะเข้าใจได้เฉพาะสิ่งที่คุณรู้อยู่แล้วยิ่งคุณไม่เข้าใจอะไรมากเท่าไหร่ คุณก็ยิ่งจมดิ่งลงไปในสิ่งใหม่มากขึ้นเท่านั้น และผลลัพธ์ของคุณก็จะยิ่งดีขึ้นเท่านั้น มันจะชัดเจนขึ้นเมื่อเวลาผ่านไป "
“ก็ถ้าว่างั้นก็ไปกันต่อเถอะ”
GO TO FULL VERSION