‫และในวิดีโอนี้ เราจะมาดูคีย์เวิร์ดของผู้ปกครองที่คุณอาจเคยเจอหรืออาจจะไม่ใช่
‫แต่แน่นอนว่าเป็นสิ่งที่มีประโยชน์มากในการเขียนโปรแกรม และจะมีความสำคัญมากสำหรับคลังคุณลักษณะที่คุณควบคุมได้
‫การพัฒนา C-sharp
‫ลองมาดูกัน
‫ประเด็นคือ เราได้ใช้วิธีที่ใช้ params แล้ว และฉันสามารถบอกคุณได้ว่าเนื่องจากเราใช้เส้นที่ถูกต้องและเส้นขวา
‫อย่างที่คุณเห็นที่นี่ สวัสดีชาวโลก
‫สิ่งที่ยอดเยี่ยมคือถ้าคุณตรวจสอบบรรทัดที่ถูกต้องเช่น เลื่อนเมาส์ไปเหนือเส้นนั้น แล้วคุณจะเห็นว่ามีการโอเวอร์โหลดหลายครั้ง
‫โดยพื้นฐานแล้ว ขอผมพิมพ์ตรงนี้อีกครั้ง บรรทัดขวาอย่างนั้น
‫และเมื่อฉันเปิดโครงยึด แสดงว่ามีการโอเวอร์โหลดที่แตกต่างกัน 18 แบบ
‫การโอเวอร์โหลดนั้นเป็นการใช้งานที่แตกต่างกันสำหรับวิธีนี้
‫ดังนั้นจึงไม่มีการนำวิธีนี้ไปใช้ในคลาสคอนโซลเพียงอย่างเดียว แต่มีหลายวิธี
‫ดังนั้นคุณสามารถตรวจสอบได้ที่นี่โดยคลิกที่มัน
‫คุณจะเห็นว่ามีการใช้งานบรรทัดขวาจำนวนมากที่นี่
‫อันที่เรียบง่าย แล้วก็อันที่ใช้ค่าบูลีน อันที่ใช้บัฟเฟอร์อย่างดี โดยพื้นฐานแล้วคือชุดของอักขระและอื่นๆ
‫จึงมีโอเวอร์โหลดที่แตกต่างกันมากมายที่เส้นสว่างนี้มี
‫และที่ผมกำลังพูดถึงเป็นพิเศษก็คือตัวที่เรามีที่นี่
‫ดังนั้นจึงเป็นอันที่ 15 อย่างน้อยก็ใน Visual Studio เวอร์ชันของฉัน
‫นี้อาจเปลี่ยนแปลงขึ้นอยู่กับเมื่อคุณเช็คเอาท์
‫และคุณจะเห็นว่ามีคีย์เวิร์ด params นี้ ดังนั้นมันจึงบอกว่า params object array arg
‫นี่หมายความว่ามันจะยอมรับพารามิเตอร์มากเท่าที่คุณให้มา และมันจะยอมรับพารามิเตอร์ของประเภทอ็อบเจกต์
‫โดยพื้นฐานแล้ว ทุกอิลิเมนต์คลาสเดียวที่คุณสร้างหรือทุกอิลิเมนต์ โดยพื้นฐานแล้ว ออบเจกต์ของอะไรก็ได้จะเป็นอ็อบเจ็กต์ประเภทนั้น
‫ดังนั้นแม้แต่โปรแกรมคลาสนี้ภายในก็จะสืบทอดจากอ็อบเจ็กต์
‫เราจะมาดูมรดกกันในภายหลัง แต่โดยพื้นฐานแล้วมันบอกว่ายอมรับข้อมูลประเภทใดก็ได้หรือข้อมูลประเภทใดก็ได้
‫นั่นเป็นสิ่งที่ดีจริงๆ เกี่ยวกับตัวอย่างนี้ แต่คุณไม่จำเป็นต้องใช้ในลักษณะที่ยอมรับข้อมูลทุกประเภท
‫ก่อนที่เราจะซับซ้อนเกินไป เรามาดูตัวอย่างกันก่อน
‫ดังนั้นเราจึงเห็นในการโอเวอร์โหลดนี้ว่ายอมรับรูปแบบสตริงและพารามิเตอร์ในภายหลัง
‫ลองส่งค่าสองสามค่าไปที่เมธอดเส้นขวานี้
‫ดังนั้นเราจะใช้ price is และค่าใดหรือค่าแรกที่เรามีหลังจากสตริงนี้และเครื่องหมายจุลภาคที่เราส่งผ่านเป็นพารามิเตอร์จะเป็นตำแหน่งนี้เป็นศูนย์
‫จากนั้น PI คือ 314 ซึ่งจะอยู่ที่ตำแหน่งนี้ และ ET คือ และนี่จะเป็นเครื่องหมายโฆษณานี้
‫ดังนั้นถ้าเรารันสิ่งนี้
‫คุณจะเห็นว่าโดยทั่วไปยอมรับพารามิเตอร์ทั้งหมดของเรา
‫มันก็แค่ราคา 32, ไพ คือ 3 148 คือเครื่องหมาย ADD
‫ดังนั้นเราจึงสามารถเพิ่มตัวเลขได้มากเท่าที่เราต้องการหรือพารามิเตอร์มากเท่าที่เราต้องการ
‫ลองมาดูตัวอย่างโง่ๆ ที่เราแค่ส่งตัวเลขแบบนี้ หนึ่งบวกสองบวกสามและอื่นๆ
‫โดยพื้นฐานแล้ว ค่าเหล่านี้เป็นค่าที่เรามีที่นี่ แต่ถ้าคุณต้องการใช้ในสตริง
‫เราต้องเริ่มด้วยศูนย์
‫นี่จะเป็นตำแหน่งศูนย์ ซึ่งหมายความว่าจะแสดงตำแหน่งหนึ่ง ตำแหน่งที่สองจะแสดงตำแหน่งที่สอง
‫ซึ่งจะเป็นตำแหน่งนี้ที่นี่และต่อๆ ไป
‫ดังนั้นหากเรารันโค้ดนี้ คุณจะเห็นว่ามันยังคงใช้งานได้
‫มันบอกว่า หนึ่ง บวก สอง บวก สาม เป็นต้น จนกระทั่งมันให้ 28 แก่เรา
‫แสดงว่าเราไม่มีแปดตรงนี้
‫เรามีเก้า
‫เราทำมาทั้งหมดแล้ว ซึ่งก็คือ 28 ตรงนี้
‫คุณจะเห็นว่าที่นี่ เรามีการคำนวณที่ส่งต่อไปยังมัน
‫ดังนั้นจึงรับได้ทุกประเภท
‫แต่ส่วนสำคัญที่เราต้องการดูไม่ใช่วัตถุ แต่เรากำลังดูที่คีย์เวิร์ด
‫params
‫เรามาสร้างตัวอย่างของเราเองโดยที่เราจะใช้คีย์เวิร์ด params เพื่อให้พารามิเตอร์ต่างๆ
‫มากที่สุดเท่าที่สีของเมธอดต้องการส่งมาที่เรา
‫มาสร้างวิธีการใหม่ สาธารณะแบบคงที่
‫เราทำให้มันคงที่เพื่อให้เราสามารถใช้มันภายในวิธีการหลักของเราหรือเราสามารถเรียกมันจากวิธีการหลักของเราและฉันจะไม่ส่งคืนอะไรเลยและมันจะเป็นประเภทในขณะที่เราจะตั้งชื่อวิธีพารามิเตอร์
‫และที่นี่เราจะใช้คีย์เวิร์ด params นี้
‫ในกรณีของเรา มันก็จะไม่ใช่ประเภทอ็อบเจกต์ แต่มันจะเป็นอาร์เรย์ของสตริงที่เราสามารถส่งผ่านไปได้
‫และฉันจะเรียกสิ่งนี้ว่า
‫อาร์เรย์ของประโยคสตริง
‫ดังนั้นภายในวิธีการของพ่อแม่ของเรา
‫ทีนี้ สิ่งที่เราจะทำคือ เราจะใช้โฟร์ลูป
‫และฉันจะเป็นศูนย์
‫ฉันจะน้อยกว่าความยาวของประโยค
‫แล้วเราก็เพิ่มขึ้นทีละหนึ่ง
‫ดังนั้นปีบวกบวก
‫ตกลง.
‫ฉันต้องการทำอะไรในลูปนี้?
‫โดยพื้นฐานแล้วฉันแค่ต้องการเขียนทุกรายการของรายการพารามิเตอร์นั้นที่ส่งมาหาฉัน
‫ฉันต้องการเขียนมันลงบนคอนโซล และฉันก็สามารถทำได้โดยใช้คอนโซล
‫คิดถ้อยแถลงที่ถูกต้องที่นี่
‫ดังนั้น.
‫ถูกต้อง.
‫การใช้ประโยคที่ตำแหน่ง I เพราะประโยค ถ้าคุณมองว่าเป็นอาร์เรย์ ก็คืออาร์เรย์ของสตริง
‫ดังนั้นตำแหน่งที่ฉันจะเริ่มต้นจึงเป็นศูนย์
‫ดังนั้น ไม่ว่าพารามิเตอร์แรกจะเป็นอะไรก็ตาม ที่ถูกกำหนดให้ฉันเป็นสิ่งที่ฉันจะเขียน
‫ณ จุดนี้ แล้วฉันจะเพิ่มพื้นที่ว่างเช่นนั้น
‫และไปที่การวนซ้ำถัดไปของ for loop
‫ดังนั้น for loop จะวนซ้ำหลายครั้งเมื่อเราส่งพารามิเตอร์ไปยังวิธี params นี้
‫ลองดูในวิธีการหลักของเรา
‫ให้เรียกวิธีนี้ว่าจริงๆ แล้ว
‫ในที่นี้ ผมจะเรียกเมธอด Params นี้ด้วยประโยคธรรมดาๆ หรืองี่เง่า แต่ประโยคจะแบ่งออกเป็นคำๆ
‫เดียว
‫ผมเลยจะบอกว่านี่เป็นสายยาว
‫ฉันไม่รู้ว่ามันจะจบลงเมื่อไหร่
‫จุดจุดจุด
‫และเราสามารถไปต่อได้ ณ จุดนี้
‫แต่โดยพื้นฐานแล้ว เราก็แค่ส่งผ่านสายหนึ่ง อีกสายหนึ่ง อีกสายหนึ่ง และอื่นๆ
‫เรากำลังส่งผ่านพวงของสตริงที่นี่
‫มาเรียกใช้แอปพลิเคชันนี้กันเถอะ
‫และเราจะเห็นว่านี่เป็นสายยาว
‫ฉันไม่รู้ว่ามันจะจบลงเมื่อไหร่
‫ตอนนี้เราสามารถเปลี่ยนแปลงสิ่งนี้ได้ทุกเมื่อ
‫มาทำกัน
‫เรียกใช้อีกครั้ง
‫และตอนนี้ คุณเห็นไหม เราได้ทำให้ประโยคของเราพิการ
‫ไม่รู้ว่าจะสิ้นสุดเมื่อไร แต่โค้ดยังใช้งานได้
‫ดังนั้นโดยพื้นฐานแล้วแป้นพิมพ์สเปิร์มช่วยให้เราสามารถส่งผ่านพารามิเตอร์ได้มากเท่าที่เราต้องการ
‫เรายังสามารถส่งผ่านไม่มีพารามิเตอร์เลย
‫ดังนั้นอย่าส่งผ่านพารามิเตอร์
‫และเราจะเห็นว่าไม่มีอะไรเกิดขึ้น
‫แต่รหัสของเราก็ไม่ขัดข้องเช่นกัน
‫ตกลง.
‫นั่นคือข้อดีของคีย์เวิร์ด params นี้
‫ตอนนี้เรามาสร้างวิธีการที่จะอนุญาตวัตถุด้วย
‫เรามาสร้างวิธี Params อื่นกัน
‫อันนี้จะเป็น parent method ที่ 2 และจะไม่รับ string แต่จะเอา object และเราเรียกมันว่า
‫stuff
‫สิ่งที่เราจะทำตอนนี้ก็คือ เราจะใช้สิ่งนี้กับแต่ละลูป ซึ่งจะผ่านสิ่งที่เราส่งผ่านไปยังมัน
‫ซึ่งเป็นอาร์เรย์ของอ็อบเจกต์
‫และสำหรับทุกอ็อบเจ็กต์ มันจะใส่อ็อบเจ็กต์นั้นลงในคำสั่งที่ถูกต้องที่นี่
‫ตอนนี้อะไร?
‫สิ่งที่ยอดเยี่ยมคือทุกคลาสมีวิธีการที่เรียกว่าสตริงภายใน
‫ดังนั้นทุกคลาสเดียว ไม่ว่าคุณจะสร้างคลาสใดภายใน มีเมธอดนี้หรือสืบทอดมาจากอ็อบเจ็กต์
‫ซึ่งหมายความว่ามีการเรียกเมธอดนี้
‫เพื่อสตริง
‫นั่นหมายความว่าไม่ว่าวัตถุใดก็ตามที่คุณให้กับเมธอดของเรา มันก็จะสามารถสร้างสตริงออกมาได้
‫แม้ว่าสตริงจะเป็นแบบนี้ ก็คือคลาส หรือนี่คือคลาสที่เรียกว่า เฉยๆ
‫ดังนั้นอาจไม่ใช่ข้อมูลที่เป็นประโยชน์ใด ๆ ที่คุณได้รับ แต่อย่างน้อยก็จะทำให้เป็นสตริงและแอปพลิเคชันจะไม่หยุดทำงาน
‫อย่างที่ฉันพูดไป มรดกคือสิ่งที่เราจะพูดถึงในภายหลัง
‫โดยพื้นฐานแล้ว มันคือความสัมพันธ์ระหว่างคลาสต่างๆ และคลาสหนึ่งจะเป็นพาเรนต์
‫แล้วคุณมีดี คุณสามารถมีลูกหลายคนในชั้นเรียนนี้และโดยพื้นฐานแล้วผู้ปกครองมีชุดคุณลักษณะเฉพาะสำหรับฟังก์ชันบางอย่างและสมาชิกโดยทั่วไปและชั้นเรียนที่สืบทอดมาพวกเขาจะมีคุณสมบัติเหมือนกับผู้ปกครองดังนั้นสมาชิกจึงเหมือนกัน
‫ผู้ปกครอง แต่สามารถขยายได้ในภายหลัง
‫แต่อย่างที่ฉันพูด เราจะพูดถึงเรื่องนี้ในเชิงลึกในบทที่แยกจากกัน
‫นี่ถ้าเราทำได้ดี ไม่มีอะไรเกิดขึ้น
‫ลองทำสิ่งนี้กันจริงๆ
‫ลองเรียกวิธี parent ด้วยค่าเจ๋ง ๆ ที่เราจะส่งต่อ
‫ดังนั้น ผมจะส่งต่อค่าโง่ๆ บางอย่างไป
‫มาทำกันแบบนี้.
‫โอเค ตรงนี้ผมมีเลขจำนวนเต็มซึ่งผมจะเรียกว่าราคา และผมให้ค่าเป็น 50
‫จากนั้นฉันก็ผ่านทุ่นซึ่งจะเป็นพายของฉัน
‫จากนั้นฉันก็มีตัวละครที่จะเป็นป้ายโฆษณา
‫จากนั้นฉันก็มีสตริงที่เรียกว่าหนังสือซึ่งจะเป็น The Hobbit
‫และสิ่งที่ฉันทำตอนนี้คือ ใช้วิธีนี้ต่อ ซึ่งยอมรับรายการพารามิเตอร์ของอ็อบเจ็กต์ ไม่ว่าจะมีจำนวนเท่าใด
‫และเราเพิ่งผ่านสี่เพราะเราตัดสินใจ
‫เราสามารถส่งผ่านสามหรือเจ็ดหรือมากเท่าใดก็ได้ที่เราต้องการ และตอนนี้เราก็แค่ส่งตัวแปรต่างๆ
‫เหล่านั้นออกไปทั้งหมด
‫ดังนั้นเราจึงผ่านราคาสูงและจอง
‫และถ้าเราดำเนินการตอนนี้
‫เราจะเห็นว่ามันบอกว่า 53 ค.ศ. 14 และเดอะฮอบบิท
‫และบรรทัดที่สอง สิ่งที่เราเรียกว่าวิธี Paramount วิธีที่สอง
‫อีกครั้ง เรากำลังส่งผ่านค่าโดยตรง
‫เรากำลังส่งสตริงตรงนี้ 55 3 และเครื่องหมายดอลลาร์อักขระ
‫อักขระหนึ่งตัวก็เพราะว่าเรากำลังใช้เครื่องหมายคำพูดเดี่ยวที่นี่
‫หรือโดยพื้นฐานแล้วอะโพสโทรฟี
‫ตอนนี้คุณอาจสงสัยว่าทำไมฉันถึงสนใจคุณลักษณะนี้
‫เพราะคุณให้ตัวอย่างกับฉันที่นี่ เดนนิส แต่พวกมันไม่มีประโยชน์กับฉันจริงๆ แล้วฉันจะไปสนใจทำไม
‫เพราะฉันสามารถกำหนดได้อย่างเฉพาะเจาะจงถึงจำนวนพารามิเตอร์ จำนวนพารามิเตอร์ที่ฉันต้องการส่งถึงคุณ และจากนั้นฉันก็ระบุได้เฉพาะเจาะจงมาก
‫ประเด็นก็คือ มีแอปพลิเคชั่นมากมายที่ไม่เป็นเช่นนั้น
‫ซึ่งคุณจะต้องแน่ใจว่าคุณให้อิสระในการส่งต่อค่าต่างๆ ที่หลากหลาย
‫และเราจะดูกันให้ดีในตัวอย่างเฉพาะในวิดีโอหน้า
‫แล้วเจอกันนะ