บทความนี้แบ่งปันสองประเพณีคลาสสิกของอินเทอร์เฟซ Java สำหรับการอ้างอิงของคุณ เนื้อหาเฉพาะมีดังนี้
1. ตัวอย่างการโหลดแบบไดนามิกของอินเตอร์เฟส Java polymorphic
เขียนโปรแกรมทั่วไปเพื่อคำนวณเวลาที่ใช้สำหรับยานพาหนะที่ไม่ใช่การขนส่งเพื่อวิ่ง 1,000 กิโลเมตร เป็นที่ทราบกันดีว่าพารามิเตอร์ของการขนส่งแต่ละครั้งคือการแสดงออก 3 ครั้งของจำนวนเต็ม A, B และ C มีเครื่องมือสองอย่างที่มีอยู่: รถยนต์และระนาบซึ่งสูตรการคำนวณความเร็วของรถยนต์คือ: A+B+C มีสามคลาสที่ต้องเขียน: computeTime.java, palne.java, car.java และอินเทอร์เฟซ Common.java จำเป็นต้องมีการเพิ่มยานพาหนะการขนส่งครั้งที่สามในอนาคตไม่จำเป็นต้องปรับเปลี่ยนขั้นตอนก่อนหน้านี้ แต่จำเป็นต้องใช้ขั้นตอนการขนส่งใหม่เท่านั้น กระบวนการดำเนินการมีดังนี้:
ป้อนพารามิเตอร์สี่พารามิเตอร์ของ ComputEtime จากบรรทัดคำสั่ง อย่างแรกคือประเภทของยานพาหนะและพารามิเตอร์ที่สองสามและสี่คือจำนวนเต็ม A, B และ C เป็นตัวอย่าง:
คำนวณเวลาของเครื่องบิน: "ระนาบ 20 30 40"
คำนวณเวลาของรถยนต์: "Car 23 34 45"
หากยานพาหนะในสถานที่ที่สามคือเรือคุณจะต้องเขียน ship.java และอินพุตรันไทม์: "เรือ 22 33 44"
เคล็ดลับ: ใช้ประโยชน์จากแนวคิดของอินเทอร์เฟซอย่างเต็มที่และวัตถุอินเตอร์เฟสทำหน้าที่เป็นพารามิเตอร์
อีกวิธีหนึ่งในการสร้างอินสแตนซ์วัตถุ: class.forname (str) .newinstance (); ตัวอย่างเช่นจำเป็นต้องสร้างอินสแตนซ์
สำหรับวัตถุเครื่องบินเพียงแค่เรียกคลาส forName ("ระนาบ") newInstance ()
รหัส:
1. ComputTime.java โปรดตรวจสอบให้แน่ใจว่าอินพุตถูกต้องโดยที่ NumberFromateXception ไม่ถูกจับ
นำเข้า caltime.vehicle.All.Common; นำเข้า Java .lang.*; คลาสสาธารณะการคำนวณ {โมฆะคงที่สาธารณะหลัก (สตริง args []) {system.out.println ("การเดินทาง:"+args [0]); system.out.println ("พารามิเตอร์ a:"+args [1]); "+args [2]); system.out.println (" พารามิเตอร์ c: "+args [3]); double a = double.parsedouble (args [1]); double b = double.parsedouble (args [2]); double c = double.parsedouble (args [3]); class.forname ("caltime.vehicle."+args [0]). newinstance (); v = d.runtimer (a, b, c); t = 1000/v; system.out.println ("ความเร็วเฉลี่ย:"+v+"km/h"); {system.out.println ("ไม่พบคลาส");}}} 2.plane.java
Package Caltime.vehicle; Import Caltime.vehicle.all.Common; Public Class Plane ใช้งานทั่วไป {public double runtimer (double a, double b, double c) {return (a + b + c);}} 3. car.java
Package Caltime.vehicle; Import Caltime.vehicle.all.Common; รถระดับสาธารณะใช้งานทั่วไป {สาธารณะสอง runtimer (สอง double a, double b, double c) {return (a*b/c);}} 4.Common.java
แพ็คเกจ caltime.vehicle.all อินเตอร์เฟสสาธารณะทั่วไป {double runtimer (double a, double b, double c);} ผลการดำเนินการเดียว:
C:/ Java> Java Computetime Car 100 45 67
การขนส่ง: รถยนต์
พารามิเตอร์ A: 100
พารามิเตอร์ B: 45
พารามิเตอร์ C: 67
ความเร็วเฉลี่ย: 67.164179104447761 กม./ชม.
เวลาทำงาน: 14.8888888888889 ชั่วโมง
C:/ java> เครื่องบิน Java ComputeTime 130 45 67
การขนส่ง: เครื่องบิน
พารามิเตอร์ A: 130
พารามิเตอร์ B: 45
พารามิเตอร์ C: 67
ความเร็วเฉลี่ย: 242.0 กม./ชม.
เวลาทำงาน: 4.132231404958677 ชั่วโมง
ตัวอย่างนี้แสดงให้เห็นถึงการใช้อินเทอร์เฟซแบบคลาสสิกและการคิดใน Java ได้ทำการวิเคราะห์อย่างลึกซึ้งเกี่ยวกับเรื่องนี้เพื่อให้คุณสามารถตรวจสอบได้
2. อินเตอร์เฟสถูกส่งผ่านเป็นพารามิเตอร์ของวิธีการ
ตัวอย่าง:
อินเทอร์เฟซ Extrembroadable {public void input ();} คลาส keybroad ดำเนินการ ExtionBroadable {อินพุตโมฆะสาธารณะ () {system.out.println ("/n hi, keybroad ได้รับการป้อนเข้าสู่ MainBroad!/n");}} คลาส NetCardBroad mainbroad!/n ");}} checkBroad คลาส {โมฆะสาธารณะ getMainMessage (extedbroadable ext) {ext.input ();}} คลาสสาธารณะ interfacetest01 {โมฆะคงที่สาธารณะ (สตริง [] args) CheckBroad (); CB.GetMainMessage (KB); CB.GetMainMessage (NCB); - พารามิเตอร์ของประเภทอินเตอร์เฟสสามารถใช้เป็นพารามิเตอร์วิธี ในการใช้งานจริงคลาสที่ใช้อินเทอร์เฟซสามารถส่งผ่านไปยังวิธีการและวิธีการอาจดำเนินการตามหลักการของการเขียนใหม่ การโทรที่แท้จริงคือร่างกายวิธีการรหัสในคลาสการใช้งาน สิ่งนี้ช่วยให้สามารถใช้งานฟังก์ชั่นที่แตกต่างกันตามพารามิเตอร์ที่ส่งเข้ามา
สิ่งสำคัญคือเมื่อฉันต้องการวัตถุอื่นในอนาคตและมีร่างกายวิธีการของตัวเองเราไม่จำเป็นต้องเขียนคลาสดั้งเดิมใหม่เราเพียงแค่ต้องเรียนใหม่เพื่อใช้อินเทอร์เฟซ
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น