亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Java面向對象的思維方法

2019-11-18 10:44:02
字體:
來源:轉載
供稿:網友

  我是從學習java編程開始接觸OOP(面向對象編程),剛開始使用Java編寫程序的時候感覺很別扭,因為我早以習慣用C來編寫程序,很欣賞C的簡潔性和高效性,喜歡C簡練而表達能力豐富的風格,非凡忍受不了Java運行起來慢吞吞的速度,相對冗長的代碼,而且一個很簡單的事情,要寫好多類,一個類調用一個類,心里的抵觸情緒很強。
  
  我對Java的面向對象的特性琢磨良久,自認為有所領悟,也開始有意識的運用OOP風格來寫程序,然而還是經常會覺得不知道應該怎樣提煉類,面對一個具體的問題的時候,會覺得腦子里千頭萬緒的,不知道怎么下手,一不小心,又會回到原來的思路上去。
  
  舉個例子,要發廣告郵件,廣告郵件列表存在數據庫里面。倘若用C來寫的話,一般會這樣思考,先把郵件內容讀入,然后連接數據庫,循環取郵件地址,調用本機的qmail的sendmail命令發送。
  
  然后考慮用Java來實現,既然是OOP,就不能什么代碼都塞到main過程里面,于是就設計了三個類:
  
  一個類是負責讀取數據庫,取郵件地址,調用qmail的sendmail命令發送;
  一個類是讀郵件內容,MIME編碼成Html格式的,再加上郵件頭;
  一個主類負責從命令讀參數,處理命令行參數,調用發email的類。
  
  把一件工作按照功能劃分為3個模塊分別處理,每個類完成一件模塊任務。
  
  仔細的分析一下,就會發現這樣的設計完全是從程序員實現程序功能的角度來設計的,或者說,設計類的時候,是自低向上的,從機器的角度到現實世界的角度來分析問題的。因此在設計的時候,就已經把程序編程實現的細節都考慮進去了,企圖從底層實現程序這樣的出發點來達到滿足現實世界的軟件需求的目標。
  
  這樣的分析方法其實是不適用于Java這樣面向對象的編程語言,因為,假如改用C語言,封裝兩個C函數,都會比Java實現起來輕松的多,邏輯上也清楚的多。
  
  我覺得面向對象的精髓在于考慮問題的思路是從現實世界的人類思維習慣出發的,只要領會了這一點,就領會了面向對象的思維方法。
  
  舉一個非常簡單的例子:假使現在需要寫一個網頁計數器,客戶訪問一次頁面,網頁計數器加1,計數器是這樣來訪問的
  
  http://hostname/count.cgi?id=xxx
  
  后臺有一個數據庫表,保存每個id(一個id對應一個被統計訪問次數的頁面)的計數器當前值,請求頁面一次,對應id的計數器的字段加1(這里我們忽略并發更新數據庫表,出現的表鎖定的問題)。
  
  假如按照一般從程序實現的角度來分析,我們會這樣考慮:首先是從HTTP GET請求取到id,然后按照id查數據庫表,獲得某id對應的訪問計數值,然后加1,更新數據庫,最后向頁面顯示訪問計數。
  
  現在假設一個沒有程序設計經驗的人,他會怎樣來思考這個問題的呢?他會提出什么樣的需求呢?他很可能會這樣想:
  
  我需要有一個計數器,這個計數器應該有這樣的功能,刷新一次頁面,訪問量就會加1,另外最好還有一個計數器清0的功能,當然計數器假如有一個可以設為任意值的功能的話,我就可以作弊了。
  
  做為一個沒有程序設計經驗的人來說,他完全不會想到對數據庫應該如何操作,對于HTTP變量該如何傳遞,他考慮問題的角度就是我有什么需求,我的業務邏輯是什么,軟件應該有什么功能。
  
  按照這樣的思路(請注重,他的思路其實就是我們平時在生活中習慣的思維方式),我們知道需要有一個計數器類 Counter,有一個必須的和兩個可選的方法:
  
  getCount()  // 取計數器值方法
  resetCounter()  // 計數器清0方法
  setCount()  // 設計數器為相應的值方法
  
  把Counter類完整的定義如下:
  
  public class Counter {
   public int getCount(int id) {}
   public void resetCounter(int id) {}
   public void setCount(int id, int currentCount) {}
  }
  
  解決問題的框架已經有了,來看一下如何使用Counter。 在count.cgi里面調用Counter來計數,程序片斷如下:
  
   // 這里從HTTP環境里面取id值
    ...
   Counter myCounter = new Counter(); // 獲得計數器
   int currentCount = myCounter.getCount(id); // 從計數器中取計數
   // 這里向客戶瀏覽器輸出
    ...
  
  程序的框架全都寫好了,剩下的就是實現Counter類方法里面具體的代碼了,此時才去考慮具體的程序語言實現的細節,比如,在getCount()方法里面訪問數據庫,更新計數值。
  
  從上面的例子中看到,面向對象的思維方法其實就是我們在現實生活中習慣的思維方式,是從人類考慮問題的角度出發,把人類解決問題的思維方式逐步翻譯成程序能夠理解的思維方式的過程,在這個翻譯的過程中,軟件也就逐步被設計好了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
另类少妇人与禽zozz0性伦| 亚洲香蕉av在线一区二区三区| 亚洲一区二区中文| 国产在线精品一区免费香蕉| 久久99国产综合精品女同| 中文字幕无线精品亚洲乱码一区| 国内精品在线一区| 亚洲电影免费在线观看| 中文字幕久热精品视频在线| 久久91亚洲精品中文字幕奶水| 97精品一区二区三区| 久久精品国产亚洲7777| 国产成人中文字幕| 久久久91精品国产一区不卡| 国产不卡av在线免费观看| 欧美猛少妇色xxxxx| 久久福利视频网| 国产精品成熟老女人| 91久久精品国产91久久性色| 日本高清不卡的在线| 亚洲在线视频福利| 日韩黄色av网站| 欧美日韩国产中文精品字幕自在自线| 欧美精品免费在线观看| 精品国产美女在线| 亚洲图片在线综合| 国产精品扒开腿做爽爽爽的视频| 精品一区精品二区| 欧美国产日韩精品| 亚洲国产另类 国产精品国产免费| 另类图片亚洲另类| 亚洲天堂免费在线| 国产视频综合在线| 午夜剧场成人观在线视频免费观看| 亚洲天堂av图片| 国产成人精品综合久久久| 97国产精品免费视频| 亚洲欧美精品中文字幕在线| 国产精品久久久久久久久久99| 国产欧美日韩高清| 精品亚洲va在线va天堂资源站| 日本精品视频在线播放| 成人免费网视频| 久久久精品美女| 精品久久中文字幕| 91亚洲精品在线观看| 国产成人精品最新| 国产成人高清激情视频在线观看| 国产精品久久久久99| 亚洲第一中文字幕| 午夜精品福利视频| 日韩电影在线观看永久视频免费网站| 欧美专区在线播放| 日韩av在线播放资源| 欧美国产视频日韩| 欧美极品在线视频| 不卡伊人av在线播放| 亚洲伊人成综合成人网| 亚洲欧美国产日韩天堂区| 狠狠躁夜夜躁人人爽天天天天97| 日本欧美在线视频| 日韩av免费在线播放| 国产精品视频久久| 国产不卡精品视男人的天堂| 国产精品久久久久久亚洲调教| 成人精品视频久久久久| 亚洲色图在线观看| 久久亚洲国产精品| 日本不卡免费高清视频| 91成人免费观看网站| 午夜精品国产精品大乳美女| 91精品久久久久久久久| 欧美日韩精品在线观看| 日韩av网址在线观看| 精品伊人久久97| 亚洲xxxx3d| 久久久噜噜噜久久中文字免| 欧美黑人狂野猛交老妇| 91精品国产网站| 亚洲高清av在线| 岛国av一区二区| 欧美日韩一区二区免费视频| 日产精品99久久久久久| 国产精品主播视频| 国产伊人精品在线| 亚洲影院在线看| 国产精品久久久久久久久粉嫩av| 日韩天堂在线视频| 琪琪亚洲精品午夜在线| 欧美一级黑人aaaaaaa做受| 日韩精品电影网| 国产视频精品va久久久久久| 亚洲欧美日韩网| 欧美日韩成人网| 日本精品免费观看| 日韩欧美福利视频| 国产区精品视频| 国产精品免费福利| 国产精品亚洲网站| 亚洲国产日韩欧美在线图片| 成人黄色av免费在线观看| 97在线观看免费| 中文字幕亚洲在线| 国产精品免费福利| 日韩美女写真福利在线观看| 91av国产在线| 久久九九全国免费精品观看| 两个人的视频www国产精品| 91精品视频在线看| 日韩最新中文字幕电影免费看| 国产精品成熟老女人| 欧美精品久久久久a| 国产精品v日韩精品| 久久人体大胆视频| 欧美日韩免费一区| 亚洲一区二区三区四区视频| 国产精品久久久久久一区二区| 亚洲美女又黄又爽在线观看| 欧美在线性视频| 在线观看国产成人av片| 成人伊人精品色xxxx视频| 国产精品免费观看在线| 欧美日韩亚洲高清| 2019亚洲男人天堂| 日韩精品一二三四区| 亚洲欧美日韩久久久久久| 亚洲国产美女精品久久久久∴| 色999日韩欧美国产| 亚洲免费小视频| 亚洲第一网中文字幕| 日本精品一区二区三区在线播放视频| 国产精品亚洲精品| 亚洲春色另类小说| 成人免费网站在线观看| 国产精品午夜国产小视频| 91av在线国产| 亚洲欧洲免费视频| 国产精品综合网站| 97精品国产97久久久久久春色| 亚洲激情 国产| 欧美激情亚洲国产| 成人精品一区二区三区电影免费| 午夜精品免费视频| 日韩精品亚洲视频| 日本成人在线视频网址| 久久中文精品视频| 久久精品国产久精国产一老狼| 中文字幕欧美日韩va免费视频| 91福利视频网| 亚洲三级 欧美三级| 日韩视频第一页| 亚洲偷熟乱区亚洲香蕉av| 黄色一区二区在线观看| 日韩精品免费一线在线观看| 国产亚洲精品久久久久久| 国产福利视频一区二区| 国产97在线观看| 亚洲免费视频网站| 91精品久久久久久久久久入口| 国产91精品久久久| 色多多国产成人永久免费网站| 91九色国产在线| 亚洲视频999| 日韩av在线不卡|