緩衝流及裝飾者模式簡介

2021-10-10 21:38:16 字數 2159 閱讀 7980

1.1 處理流

流的概念:流是一組有順序的,有起點和終點的位元組集合,是對資料傳輸的總稱或抽象。

節點流和處理流

2.1 緩衝流概述

2.2 緩衝流案例

public

class

buffereddemo01

/** * 緩衝流測試

*/public

static

void

bufferedstreamtest01()

throws ioexception

bos.

close()

; bis.

close()

;long end = system.

currenttimemillis()

; system.out.

println(+

(end - start));

}}

2.3 高效原理**

輔助理解:

3.1 裝飾者模式概述

注:裝飾者和被裝飾者物件需要有相同的超型別,因為裝飾者和被裝飾者必須是一樣的型別,這裡利用繼承是為了達到型別匹配,而不是利用繼承獲得行為。

3.2 裝飾者模式例項

首先定義乙個裝飾者和被裝飾者的抽象超類phone

/**

* 超類:手機類

* 功能:打**,發簡訊

*/public

abstract

class

phone

然後定義乙個具體被裝飾者類commonphone

public

class

commonphone

extends

phone

@override

public string sendmsg()

}

再定義乙個裝飾者類smartphone

保留原有功能:簡訊聊天

public

class

smartphone

extends

phone

@override

public string call()

@override

public string sendmsg()

}

還可以繼續拓展手機的功能,如再定義乙個二代智慧型手機smarterphone

保留原有功能:簡訊聊天

public

class

smarterphone

extends

phone

@override

public string call()

@override

public string sendmsg()

}

測試:

public

class

phonedemo

}

【普通手機】能語音; 簡訊聊天

// new bufferedreader(reader in)

bufferedreader in =

newbufferedreader

(new

inputstreamreader

(new

fileinputstream

(string name)))

;// new bufferedwriter(writer out)

bufferedwritr out =

newbufferedwriter

(new

outputstreamwriter

(new

fileoutstream

(string name)

))

java之裝飾者模式 列印流 合併流

裝飾者模式 高內聚 低耦合 思想 將原有的功能進行提公升 裝飾者步驟 1.將被裝飾者當做類中乙個成員變數 2.在構造方法中進行成員變數的賦值 賦值後 就相當於可以拿到被裝飾者這個物件 有這個物件 就能呼叫該物件的方法 3.對方法進行公升級 public class demo01 學習 的介面 int...

裝飾者模式及C 實現

裝飾者模式 動態將職責附加到物件上,若要擴充套件功能,裝飾者提供了比繼承更具彈性的代替方案。uml圖 設計原則 1.多用組合,少用繼承。利用繼承設計子類的行為,是在編譯時靜態決定的,而且所有的子類都會繼承到相同的行為。然而,如果能夠利用組合的做法擴充套件物件的行為,就可以在執行時動態地進行擴充套件。...

裝飾模式簡介

1 裝飾模式定義 動態的給乙個物件新增一些額外的職責 2 應用裝飾模式來解決的思路 透明的給乙個物件增加功能,換句話說就是要給乙個物件增加功能,但是不能讓這個物件知道,也就是不能去改動這個物件。而實現了能夠給乙個物件透明的增加功能,自然就能夠實現功能的動態組合,比如原來的物件有a功能,現在透明的給它...