多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 換一個視角看事務 - 用"Java語言"寫"作文"

換一個視角看事務 - 用"Java語言"寫"作文"

來源:程序員人生   發布時間:2015-01-19 08:28:41 閱讀次數:4470次

前段時間在抽工作之空余,更加系統和深入的重新學習Java的1些技術知識。

最近也試著申請了1個專欄,對前段時間的1些收獲和知識點做1個系統性的歸納回顧和總結。

昨天也是剛剛寫完了關于Java中的各種基礎語言要素的總結,總覺得少了點甚么。


對基礎語言要素的理解和使用,實際上是很重要的。

俗語說,1切偉大的行動和思想,都源于1個微不足道的開始。

而對1門語言來講,熟練的掌握對其基礎語言要素的理解和使用,就是這個“微不足道的開始”


可以這樣說,1門語言的基礎語言要素,就同等因而1門武功的內功。

將自己的“內功”練到出神入化,剩下的,就只是招式(外功)而已了。

我在網上看到他人這樣解釋內功與外功的區分,覺得用于表達我想說的話,10分契合:

內功就像子彈,外功就像槍。
每一個人都會有子彈和槍,但問題是多少和優劣。
內功越強,子彈越多;外功越強,槍就越好。

其二者之間的關系就是,內功是基礎,決定外功建筑。

對應于Java當中來講則是:

基礎語言要素是根基;而我們所做的所謂的“編程”工作,實際就是通過根基創造使用招式而已。


回想最初學習Java時,1直沒能對這些基礎語言要素有足夠的重視,

也沒能對其有1個很系統性的分類歸納的理解,致使總覺得思路有點雜亂。

經常在想,怎樣樣可以對這些語言要素的概念和使用方式,有1個更形象的理解。

后來在漸漸深入的進程中,發現:

“編程”工作與我們在學生時期都經歷的“作文”工作實際上是很相似的。


舉例來講:

請以《站在……的門口》為題寫1篇文章。 要求:1.立意自定。 2.文體不限。可以記敘經歷,抒發感情,發表議論,展開想象,等等。 3.很多于800字
這是甚么?這是1個作文題目。


而:

有1個100萬長度的數組,其中有兩個數是重復的, 請使用Java語言寫1個最快的算法,查找到重復的數。
這又是甚么?這是1道程序題目。


所以我們不難發現,所謂的“作文題目”與“程序題目”。

歸納來說:實際上也就是1種“實現需求”罷了。

對2種不同的需求,我們所做的工作實際上都是“編寫文章”!不同的是,

  • 對“作文題目”,我們使用的語言是:中文;對“程序題目”,我們使用的語言是:Java;
  • 對用中文書寫的文章,我們通常稱為“1篇作文”;對用Java語言書寫的文章,我們通常稱為“1個Java類”。


1篇作文的構成可能通常包括:

  • 標題:用于對整篇作文所講的內容做1個最精短的概括。例如每一個人小時候可能都用過的作文題目《我的父親》,目的就是讓瀏覽的人看見就題目就知道這篇作文是描述關于你父親的業績的。
  • 人、物、地點:1篇文章自然會觸及到相干的人,物和事情產生的地點。例如《我的父親》1文里,通常都有1個經典情節:記得小時候,夜里發高燒下著大雨,也打不到車了。父親決然毅然的冒著大雨背著我跑到了醫院..云云。那末這里觸及到的人就是:“我”和“父親”;觸及到的物可能包括:雨傘,雨衣等;觸及到的地點可能包括:“家”,醫院等.
  • 故事情節(段落):故事情節多是1篇作文所占比重最大的部份。而一樣以《我的父親》為言,通常我們會根據多個事例來表現父親對自己的好,而每一個事例就會分別對應于1個故事情節。而我們就會通過分段來分別描寫這些故事情節,而故事情節里觸及到的就是所謂的“人、物、地點”。

同理的,1個Java類的構成通常包括:

  • 類的聲明:Java類的類名與作文的“標題”作用實際是1樣的。就是用于描寫你封裝的該類提供的功能。
  • 變量/常量:變量與常量實際上就是作文中的“人,物和地點”。
  • 方法(函數):方法用于描寫我們要提供的程序功能,就猶如段落用于描寫故事情節1樣。而段落觸及“人、物、地點”,方法里使用定義的變量/常量。

我們將上面舉例說到的《我的父親》轉換為1個Java類的體現情勢,可能能讓我們更形象的進行理解:

/* * 作文《我的父親》用Java類體現 */ public class MyDad /* 類聲明::作文標題 */{ // 變量(常量)用于記錄作文中的人、物、地點 // 人物: private static final String ME = "我"; private static final String MY_DAD = "我的父親"; // 物: private static final String RAINCOAT = "雨衣"; // 地點: private static final String MY_HOME = "我家"; private static final String HOSPITAL = "醫院"; //函數 ::段落 private static void see_a_patient(){ StringBuilder sb = new StringBuilder(); sb.append("記得小時候,有1次"); sb.append(ME);//使用變量 sb.append("發高燒!窗外下著大雨,也打不到車。萬分緊急之下,"); sb.append(MY_DAD); sb.append("趕快拿出1件"); sb.append(RAINCOAT); sb.append("為我披上,背上我,冒著大雨把我從"); sb.append(MY_HOME); sb.append("送到了"); sb.append(HOSPITAL); System.out.println(sb.toString()); } public static void main(String[] args) { see_a_patient(); } }

該程序運行的輸出信息為:

記得小時候,有1次我發高燒!窗外下著大雨,也打不到車。萬分緊急之下,我的父親趕快拿出1件雨衣為我披上,背上我,冒著大雨把我從我家送到了醫院

請看了,我們不正是用Java語言寫了1篇“作文”嗎?

到此,我們通過以熟習的“作文”為切入點,了解了1個Java類的構成結構。

由此我們知道了:1個Java類的構成實際其實不復雜,它的結構通常就是類聲明、變量(常量)和方法(函數)。

而所謂的1個“復雜的類”就猶如“1篇幾萬字的文章”的原理1樣,不過就是:

1、觸及到的人、物更多 = 定義的變量常量更多

2、段落更多/描寫的故事情節更多 = 定義的方法(函數更多)


而對應的,以長篇小說為例。如果1篇文章的故事的字數已到達了1定范圍,那末可能就會影響瀏覽性。這個時候,我們就能夠進1步的對其進行“分解”。

例如1本自傳體的長篇小說,1個人1生中可以描寫的情節有很多,那末它可能被搭建成以下結構:

有10篇用于描寫其青年時期業績的故事,我們將其提取出來放在1起,構成小說的第1篇:《我的青年時期》

有10篇用于描寫其中年時期業績的故事,我們也將其提取出來,作為小說的第2篇:《我的中年時期》..

從而以此類推。終究這個結構的總和被我們稱作“小說”。


Java中,也是1樣的。如果多個類綜合完成同1方面的功能實現,

那末我們也能夠將這些類提取出來,構成1個“篇章”,Java中的包結構就是這個“篇章”。

而終究由多個包結構組合起來的全部程序,就是所謂的1個完全的Java項目。


再壯觀的高樓大廈,究其根本也不過就是由眾多數量的鋼精水泥搭建起來的。

而建筑師能做的就是通過設計手段(招式)讓大樓的結構更加穩固,美觀和實用。


我們談到,之所以對1篇長篇小說進行這樣的結構搭建。是由于當文章字數到達1定量的時候,就會影響瀏覽性,其主題也會模糊。

所以在Java中也是一樣的道理,這1定程度上也是“代碼重構”的初衷之1。類應當具有足夠的功能特性化。


前面我們說到的是程序的結構,但同時我更想重點談到的是Java的基礎語言要素的使用。

但是在了解了程序的結構以后,我們相對就更容易了解基礎語言要素的意義了。

一樣以作文為例,了解作文結構是必要的。但我們還應當做的,就是以結構為切入點,

繼續深入看1篇作文的基礎要素與基礎成份,也就是是:標點符號,詞語,語句之類的東西。

由于即便你對作文結構的研究再深,如果不會使用文字,不會使用標點,不會書寫語句,那1切都是空談。


同理,假定我們要搭建1所房屋。需要了解房屋的結構構成要有臥室,廚房,浴室,客廳。

但僅僅是了解這樣的結構,或許足夠成為1名在紙上畫房屋結構設計圖的設計師;但還不足以讓你真的搭建出1所房子。

要成功的搭建出房子,還需要了解房屋的構建成份也就是材料,猶如水泥,鋼筋,1些建材等等。


那末對應到Java中來講,其實也是1樣的道理。

而Java為我們提供的材料(基礎語言要素),包括:

標示符、關鍵字、注釋、常量(變量)、運算符、表達式和程序語句。


到了這里我們再對前面說到的“類聲明、變量、方法”的Java類的結構構成,進行成份分析:

類聲明 = 訪問修飾符關鍵字 + 類聲明關鍵字 + 類名標示符

變量(常量) 的聲明 =  訪問修飾符關鍵字 +  數據類型(基本數據類型或對象數據類型) + 賦值運算符 + 變量或常量的值 

方法的聲明 = 訪問修飾符關鍵字 + 類/變量/方法修飾符關鍵字 + 返回類型關鍵字 + 方法名標示符 + 方法參數列表(局部變量)

而方法的內容通常就是通過對:運算符表達式程序語句(簡單語句和復合語句)組成“招式”,完成對數據(變量等)的操作。

//類聲明 public/* 訪問修飾符關鍵字 */class /* 類聲明關鍵字 */JavaArticlescrap /* 類名標示符 */{ private/* 訪問修飾符關鍵字 */int /* 數據類型 */num_1 /* 變量標示符 */= /* 賦值運算符 */10; private int num_2 = 20; public/* 訪問修飾符關鍵字 */static/* 靜態修飾符關鍵字 */int /* 方法返回類型 */getSum /* 方法名標示符 */( int a, int b)/* 參數列表(局部變量) */{ int sum = a + b; // 運算符、表達式、語句等等方法內容 return sum; } }

由此我們簡單的總結1下,1個Java程序的編寫工作,實際通常就是:

根據“需求”,通過對Java基礎語言要素(示符、關鍵字、注釋、常量(變量)、運算符、表達式和程序語句)的使用,組成“招式”。

寫1篇結構為:題目(類聲明) + 人、物、地點(變量/常量聲明) + 段落(方法/函數)的“作文”。


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产99精品一区二区三区免费 | 免费a级作爱片免费观看中 免费a网站 | 日本欧美一区二区三区视频麻豆 | 日本不卡一区视频 | a级艳片武则天 | 亚洲一区二区三区高清不卡 | 成人一区二区免费中文字幕 | 国产精品成人观看视频网站 | 国产精品亚洲第一区二区三区 | 性欧美巨大 | 91国语精品3p在线观看 | 女人18毛片视频一级毛片容 | 国产在线中文字幕 | 亚洲欧美成人永久第一网站 | 国内精品一级毛片免费看 | 国产精品国产亚洲精品看不卡 | 不卡中文一二三区 | 中国精品videossex中国高清 | 国语高清精品一区二区三区 | 亚洲线精品久久一区二区三区 | 最近最全中文字幕 | 国产美女无遮挡免费网站 | 97碰碰碰免费公开在线视频 | 亚洲春色校园 | 日韩精品大片 | 国产精品嫩草影院在线观看免费 | 中文国产成人精品久久一 | 欧美日韩一二三 | 亚洲自拍小视频 | 最近最新中文字幕大全免费10 | 2019最新中文字幕 | 性高跟鞋xxxxhd | 日本激情啪啪 | 女人18毛片特级一级免费视频 | 中文字幕一区2区 | 99精品视频在线成人精彩视频 | 香蕉超级碰碰碰97视频在线观看 | 性高湖久久久久久久久aaaaa | 免费高清a级毛片在线播放 免费高清不卡毛片在线看 免费高清国产 | 亚洲国产欧美一区二区欧美 | 日本中文在线 |