超市購物程序設計---面向對象編程邏輯思路,理解類和對象的典型例子---有點抽象,值得反復揣摩。


超市購物程序設計---面向對象編程邏輯思路,理解類和對象的典型例子---有點抽象,值得反復揣摩。

項目工程文件:


 

 

定義商品類Product.java:

 1 package cn.ftf.shop;  2 
 3 public class Product {  4     private String ProName;  5 
 6     public String getProName() {  7         return ProName;  8  }  9 
10     public void setProName(String proName) { 11         ProName = proName; 12  } 13 
14     
15 
16 }

定義超市類Market.java:

 1 package cn.ftf.shop;  2 
 3 public class Market {  4     private String marketName;  5     private Product[] productArr;    //私有屬性,商品類型的數組
 6     public String getMarketName() {  7         return marketName;  8  }  9     public void setMarketName(String marketName) { 10         this.marketName = marketName; 11  } 12     public Product[] getProductArr() { 13         return productArr; 14  } 15     public void setProductArr(Product[] productArr) {    //傳入數組
16         this.productArr = productArr; 17  } 18     Product sell(String name) {        //返回值的類型是商品
19         for(int i=0;i<productArr.length;i++) { 20             if(productArr[i].getProName()==name) { 21                 return productArr[i]; 22  } 23  } 24         return null; 25  } 26 }

定義購物者類Person.java

 1 package cn.ftf.shop;  2 
 3 public class Person {  4     private String name;  5 
 6     public String getName() {  7         return name;  8  }  9 
10     public void setName(String name) { 11         this.name = name; 12  } 13  Product shopping(Market market,String name) { 14         return market.sell(name); 15  } 16 
17 }

測試類TestShopping.java

 1 package cn.ftf.shop;  2 
 3 public class TestShopping {  4     public static void main(String[] args) {  5         Product p1=new Product();  6         Product p2=new Product();  7         Product p3=new Product();  8         Product p4=new Product();  9         Product p5=new Product(); 10         Product p6=new Product(); 11         p1.setProName("面包"); 12         p2.setProName("牛奶"); 13         p3.setProName("咖啡"); 14         p4.setProName("火腿"); 15         p5.setProName("可樂"); 16         p6.setProName("冰激凌"); 17         
18         Market m=new Market(); 19         m.setMarketName("廷飛超市"); 20         m.setProductArr(new Product[] {p1,p2,p3,p4,p5,p6}); 21         
22         Person pp=new Person(); 23         pp.setName("小房"); 24         Product result=pp.shopping(m, "牛"); 25         if(result!=null){ 26             System.out.println(pp.getName()+"已經買到"+result.getProName()); 27  } 28         else { 29             System.out.println("白跑了一趟,什么都沒買到!"); 30  } 31         
32  } 33 
34 }

這個例子邏輯比較復雜,對類和對象的認識要求較高,值得反復揣摩。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM