單例模式 簡單工廠模式 XML解析

2022-07-15 07:54:09 字數 4640 閱讀 9443

什麼是單例模式?

針對特定問題提出的特定解決方案

為什麼使用設計模式?

讓程式有更好的可擴充套件性

在**使用?

一般情況下,開發中真正使用設計模式的地方,jvm(虛擬機器)底層機制模式

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

day08單例

private staticplay play;

public

static

play playonlyone()

return

play; } } }

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

day08單例}}

單例模式:乙個類在記憶體中只能有乙個物件(條件)

1.類的構造設為私有的

//

構造private play()

2.定義乙個私有的靜態的的類型別變數

private

static play play;

3.公有的靜態的方法並且返回值型別為類型別的方法

public

static

play playonlyone()

return

play;

}

簡單工廠模式是類的建立模式,根據提供給它的資料返回幾個可能類中的乙個類的例項。

優點:工程類中包含了必要地邏輯判斷,根據客戶端的選擇條件動態例項化相關的類,對客戶端來說,去除了與具體產品的依賴

簡單工廠模式關係圖:

下面是乙個關於加減乘除運算的簡單工廠模式

定義乙個父類:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

sj4

public

double number2

public

virtual

double

reault() }}

子類,分別用來計算加減乘除

加法:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

sj4 }

}

//除法
using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

sj4

double result = number1 /number2;

return

result;}}

}

(減法、乘法同樣方法)

將判斷選擇的是加減乘除的方法提取到乙個類中。(為什麼要提取到一類中呢?在你使用時不可能只有乙個頁面要用到相同的方法,為了避免**的冗餘,所以提取到乙個類中)

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

sj4

case"-

":case"*

":case"/":}

return

op; }}}

在選擇時呼叫這個方法

operation operation= operationfactory.gettance(type);
xml稱為可擴充套件標記性語言,是extensible markup language的縮寫。在.net框架中xml是非常重要的一部分,他用於描述資料、是當前處理結構化文件資訊的有力工具

操作xml的物件屬性和方法

物件屬性和方法

說明xmldocument

documentelement屬性

獲取根節點

childnodes屬性

獲取所有子節點

load()方法

讀取整個xml的結構

xmlnode

innertext屬性

當前節點的值

name屬性

當前節點的名稱

childnodes屬性

當前節點的所有子節點

xml version="1.0" encoding="utf-8" 

?>

<

books

>

<

book

>

<

bookid

>101

bookid

>

<

bookname

>hah

bookname

>

<

bookanthor

>lala

bookanthor

>

book

>

<

book

>

<

bookid

>102

bookid

>

<

bookname

>hoho

bookname

>

<

bookanthor

>xixi

bookanthor

>

book

>

<

book

>

<

bookid

>103

bookid

>

<

bookname

>dudu

bookname

>

<

bookanthor

>bubu

bookanthor

>

book

>

books

>

<?xml version="1.0" encoding="utf-8" ?>是xml宣告,version:文件符合xml1.0規範

encoding:文件字元編碼,預設utf-8

解析xml檔案

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

using

system.xml;

namespace

sj1 console.readline();}}

}

注意:乙個xml檔案只能有乙個根節點

xmlelement繼承xmllinkenode,xmllinkenode繼承xmlnode

xmlnode是xmlelement爺爺

簡單工廠 And 單例模式

我們it人員或多或少都聽說過簡單工廠模式,但對於他的了解有多深,我們自己或許也不太清楚,下面,就讓我們學習一下簡單工廠的一些知識。1.簡單工廠模式 是屬於建立型模式,又叫做靜態工廠方法 static factory method 模式,但不屬於23種gof設計模式之一。簡單工廠模式是由乙個工廠物件決...

單例模式 工廠模式

單例模式 一 什麼是單例模式 有時候我們會遇到這樣一種情況,乙個類只能有乙個物件被例項化,這時我們就可以使用單例模式了。單例模式通過類本身來管理其唯一例項。在設計這個類的時候,讓他只能建立乙個例項並提供對此例項的全域性訪問。因此單例模式有兩個最基本的條件是,確保乙個類只有乙個例項被建立,提供乙個對例...

工廠模式 單例模式

一.單例模式介紹 單例類只能有乙個例項。單例類必須自己建立自己的唯一例項。單例類必須給所有其他物件提供這一例項。二.單例模式分為 4 雙重檢驗 這是最優的執行緒安全 即使用於單執行緒又適用於多執行緒 第乙個進來的時候,判斷為空,然後加鎖,繼續判斷為空,如果開闢了空間之後,還沒有去賦值,這時候有其他執...