freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

軟件開發(fā)編碼規(guī)范方案(編輯修改稿)

2025-05-29 05:04 本頁面
 

【文章內容簡介】 可變的對象因為不用上鎖所以能夠提高并發(fā)性。不要返回包含敏感數據的內部數組引用。這個不可變慣例的變型,在這兒提出是因為是個常見錯誤。即使數組中包含不可變的對象比如說是字符串,也要返回一個副本,這樣調用者不能修改數組中包含的到底是哪個字符串。在方法調用返回時,返回數據的拷貝而不要返回數組。6) 不要直接在用戶提供的數組里存儲這是不可變慣例的另一個變型。構造器和方法可以接受對象數組,比如說PubicKey數組,這個數據存儲到內部之前應當克隆,并保存克隆后的數據,而不是直接將數組引用賦給同樣類型的內部變量。如果缺少這個步驟,在使用了有問題的構造器創(chuàng)建了對象后,用戶對外部數組所作的任何修改都將更改對象的內部狀態(tài),盡管對象應該是不可變的。7) 序列化對象在序列化后、反序列化之前,都不在Java運行時環(huán)境的控制之下,也因此不在Java平臺提供的安全控制范圍內。在實現接口Serializable時務必將以下事宜牢記在心:u transient直接引用系統(tǒng)資源的句柄和包含了地址空間相關信息的字段應當使用關鍵字transient修飾。資源,如文件句柄,如果不被聲明為transient,該對象在序列化狀態(tài)下可能會被修改,從而在被反序列化后獲取對資源的不當訪問。u 特定類的序列化/反序列化方法為了確保反序列化對象不包含違反一些不變量集合的狀態(tài),類應該定義自己的反序列化方法并使用接口ObjectInputValidation驗證這些變量。如果一個類定義了自己的序列化方法,它就不能向任何DataInput/DataOuput方法傳遞內部數組。所有的DataInput/DataOuput方法都能被重寫。注意默認序列化不會向DataInput/DataOuput字節(jié)數組方法暴露私有字節(jié)數組字段。如果Serializable類直接向DataOutput(write(byte [] b))方法傳遞了一個私有數組,那么黑客可以創(chuàng)建ObjectOutputStream的子類并覆蓋write(byte [] b)方法,這樣他可以訪問并修改私有數組。下面示例說明了這個問題。示例類:public class YourClass implements Serializable {private byte [] internalArray。....private synchronized void writeObject(ObjectOutputStream stream) {...(internalArray)。...}}黑客代碼:public class HackerObjectOutputStream extends ObjectOutputStream{public void write (byte [] b) {Modify b
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1