ด้วยรากฐานของ OO ฉันเริ่มศึกษารูปแบบการออกแบบอย่างระมัดระวัง! รูปแบบการออกแบบมีความสำคัญในการออกแบบ Java!
Apple.java
กลยุทธ์แพ็คเกจ;/** * * @author Andy * */คลาสสาธารณะ Apple ใช้ส่วนลด {// น้ำหนักส่วนตัวน้ำหนักสองเท่า; // ราคาต่อหน่วยจริงได้รับการออกแบบและเงินและการคำนวณที่ถูกต้องอื่น ๆ นั้นมีขนาดใหญ่ ราคาสองเท่าส่วนตัว // ลดราคาตามปริมาณการซื้อ // ส่วนตัวส่วนลด d = ใหม่ appleweightDiscountor (); // ลดราคาโดยการซื้อราคารวมส่วนตัวส่วนลด D = ใหม่ ApplePricedIscountor (); Public Double Getweight () {น้ำหนักกลับ; } โมฆะสาธารณะ setweight (น้ำหนักสองเท่า) {this.weight = น้ำหนัก; } สาธารณะ double getPrice () {ราคาคืน; } โมฆะสาธารณะ setPrice (ราคาสองเท่า) {this.price = ราคา; } แอปเปิ้ลสาธารณะ (น้ำหนักสองเท่าราคาสองเท่า) {super (); this.weight = น้ำหนัก; this.price = ราคา; } @Override โมฆะสาธารณะส่วนลด () {D.Discount (นี่); -Banana.java
กลยุทธ์แพ็คเกจ;/** * * @author Andy * */Banana ชั้นเรียนสาธารณะใช้ส่วนลด {// น้ำหนักส่วนตัวน้ำหนักสองเท่า; ///// การพัฒนาราคาหน่วยที่แท้จริงเกี่ยวข้องกับการคำนวณที่แม่นยำเช่นเงินและสิ่งอื่น ๆ กล้วยสาธารณะ (น้ำหนักสองเท่าราคาสองเท่า) {super (); this.weight = น้ำหนัก; this.price = ราคา; } สาธารณะ double getweight () {น้ำหนักคืน; } โมฆะสาธารณะ setweight (น้ำหนักสองเท่า) {this.weight = น้ำหนัก; } สาธารณะ double getPrice () {ราคาคืน; } โมฆะสาธารณะ setPrice (ราคาสองเท่า) {this.price = ราคา; } @Override โมฆะสาธารณะส่วนลด () {// อัลกอริทึมส่วนลดถ้า (น้ำหนัก <5) {System.out.println ("Banana ที่ไม่ได้ระบุราคา:" + น้ำหนัก * ราคา); } อื่นถ้า (น้ำหนัก> = 5 && น้ำหนัก <10) {system.out.println ("กล้วยมีราคาลด 80%:" + น้ำหนัก * ราคา * 0.88); } อื่นถ้า (น้ำหนัก> = 10) {system.out.println ("กล้วย 50% ราคาลดราคา:" + น้ำหนัก * ราคา * 0.5); -Market.java
กลยุทธ์แพ็คเกจ;/** * * @author Andy * */ตลาดชั้นเรียนสาธารณะ {/** * ส่วนลดสำหรับรายการลดราคา * @param Apple */โมฆะสาธารณะคงที่เป็นโมฆะลดราคา. java
กลยุทธ์แพ็คเกจ;/** * * @author Andy * */ส่วนต่อประสานสาธารณะลดราคา {โมฆะสาธารณะส่วนลด ();}test.java
กลยุทธ์แพ็คเกจ;/** * * @author Andy * */การทดสอบคลาสสาธารณะ {/** * * @param args */โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// คุณสามารถลดราคาแอปเปิ้ล แต่ไม่ใช่สิ่งที่ใช้งานได้ทั่วไป ลดราคา D1 = กล้วยใหม่ (5.4, 1.1); Market.discountsell (D); Market.DiscountSell (D1); -