每日一練6 4

2021-08-21 00:24:29 字數 1384 閱讀 2137

閱讀數:6

mvc簡介:

mvc全名是model view controller,如圖,是模型(model)-檢視(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種業務邏輯、資料、介面顯示分離的方法組織**,在改進和個性化定製介面及使用者互動的同時,不需要重新編寫業務邏輯。

其中m層處理資料,業務邏輯等;v層處理介面的顯示結果;c層起到橋梁的作用,來控制v層和m層通訊以此來達到分離檢視顯示和業務邏輯層。

android中的mvc:

檢視層(view)

控制層(controller) ------ activity

android的控制層的重任通常落在了眾多的activity的肩上。這句話也就暗含了不要在activity中寫**,要通過activity交割model業務邏輯層處理,這樣做的另外乙個原因是android中的actiivity的響應時間是5s,如果耗時的操作放在這裡,程式就很容易被**掉。

模型層(model)

mvc的缺點:

在android開發中,activity並不是乙個標準的mvc模式中的controller,它的首要職責是載入應用的布局和初始化使用者 介面,並接受並處理來自使用者的操作請求,進而作出響應。隨著介面及其邏輯的複雜度不斷提公升,activity類的職責不斷增加,以致變得龐大臃腫。

總結:檢視(view):使用者介面。

控制器(controller):業務邏輯

模型(model):資料儲存

view 傳送指令到 controller;

controller 完成業務邏輯後,要求 model 改變狀態;

model 將新的資料傳送到 view,使用者得到反饋。

二:解釋記憶體中的棧(stack)、堆(heap)和靜態區(static area)的用法。

通常我們定義乙個基本資料型別的變數,乙個物件的引用,還有就是函式呼叫的現場儲存都使用記憶體中的棧空間;而通過new關鍵字和構造器建立的物件放在堆空間;程式中的字面量(literal)如直接書寫的100、」hello」和常量都是放在靜態區中。棧空間操作起來最快但是棧很小,通常大量的物件都是放在堆空間,理論上整個記憶體沒有被其他程序使用的空間甚至硬碟上的虛擬記憶體都可以被當成堆空間來使用。

1string str = newstring("hello");

上面的語句中變數str放在棧上,用new建立出來的字串物件放在堆上,而」hello」這個字面量放在靜態區。

三、指出下面程式的執行結果。

classa

publica()

}classb extendsa

publicb()

}publicclasshello

}執行結果:1a2b2b。建立物件時構造器的呼叫順序是:先初始化靜態成員,然後呼叫父類構造器,再初始化非靜態成員,最後呼叫自身構造器。

每日一練4

員工表emp 員工編號eid,姓名ename,工作職位title,僱傭日期hiretime,工資salary,獎金bonus,部門depart 部門表dept 部門編號did,名稱dname,部門領導leader 員工資料 1001,張三 銷售 1999 12 1 3000.0,1100.0,102...

每日一練25

請描述 mysql 從安裝到配置的全部詳細過程 確保一台新電腦可以順利使用 mysql mysql安裝嚮導啟動,按 next 繼續 選擇安裝型別,有 typical 預設 complete 完全 custom 使用者自定義 三個選項,我們選擇 custom 有更多的選項,也方便熟悉安裝過程 選擇配置...

每日一練 13

談談你對ajax 的理解?概念 特點 作用 select 教師號,sum case when 星期號 1 and 是否有課 有 then 1 else 0 end as 星期一,sum case when 星期號 2 and 是否有課 有 then 1 else 0 end as 星期二,sum c...