Code Fragment-使用IXXX聲明介面,IXXXImpl作為其子類

在很簡單的實現關係,可以如此,看上去很清晰。介面如下:public interface ITracker {public void startTrack();public void tracking();public void endTrack();}實作類別如下:public class TrackImpl implements ITracker {@Overridepublic void startTrack() {System.out.println("startTrack........

設計模式-02-Factory 方法模式的剖析

設計模式-02-Factory 方法模式的剖析本文主要參見自《Java與模式》另外還有《設計模式之禪》一、定義1.將實際建立工作延遲到工廠介面的子類中。二、簡單工廠的優缺點1.開閉原則支援的不夠:用戶端支援開閉原則,但是工廠本身不支援開閉原則。如果有新的產品過來,就需要相應的修改工廠類。三、Factory 方法模式的引進1.Factory

Code Fragment-提供相對安全和相對粗暴的兩種介面勝過單一的介面

提供相對安全和相對粗暴的兩種介面勝過單一的介面類java.util.concurrent.ThreadPoolExecutor方法shutdown在終止前允許執行以前提交的任務。code/** * Initiates an orderly shutdown in which previously submitted * tasks are executed, but no new tasks will be accepted. * Invocation has no additional

設計模式-03-抽象原廠模式

設計模式-03-抽象原廠模式本文大部分參考自《java與模式》一、與原廠模式的異同1.原廠模式是針對一個產品。2.抽象原廠模式是針對有一定關係的多個不同產品。二、特點1.每個產品族都有一個具體工廠,也就是說每個具體工廠都可以生產全部產品,只是他生產的樣式不同與其他工廠的。2.抽象工廠裡的聲明了可建立的產品族,有多少個產品,在抽象工廠裡便有多少個建立方法。三、角色1.IFactory:包含產品族的建立方法。2.IProductA:產品A的抽象父類。3.IProductB:產品B的抽象父類。4.Co

CodeFragment-條件陳述式中的參數的順序

本文參考自《編寫可讀代碼的藝術》,寫的非常好!把“不斷變化”的或我們經常操縱的值寫在運算式的左面,右面通常更傾向於常量或更為穩定的資料。例子1,上面的寫法,比不過下面的更容易閱讀if(10 <= length) {}if(length >= 10) {}例子2,上面的差於下面的while(expectedData < receivedData) {}while(receivedData > expectedData) {}

設計模式-04-單例模式

設計模式-04-單例模式本文參考自《Java與模式》以及http://baike.baidu.com/view/1859857.htm一、單例類的特點1.某個類只能有一個執行個體。2.構造器是private的(因此,單例類不能被繼承)。3.單例類必須自行建立自己的唯一執行個體。二、單例的分類1.餓汗式單例類a.類圖b.Codepackage com.jue.dp;public class EagerSingleton {private static final EagerSingleton

Code Fragment-有趣的注釋

本文參考了《編寫可讀代碼的藝術》,寫的好!參考連結:http://www.cnblogs.com/pengyingh/articles/2445826.html一、特殊的注釋FIXME 來源:android/packages/apps/Mms/src/com/android/mms/ui/SlideView.java表意:代碼不能正常工作,急需修複的private Uri getSelectedUriFromMessageList(ListView listView, int position)

設計模式-05-原型模式

本文參考自《設計模式之禪》,《Java與模式》一、通過給出一個原型對象來指明所要建立的對象的類型。二、Java中半支援1.Ojbect類提供一個clone方法。2.Java必須實現Cloneable來顯式表明Javabean支援複製。3.如果不實現Cloneable介面而直接使用,會拋出java.lang.CloneNotSupportedException。4.預設的實現是淺拷貝,需要重寫clone方法。三、Codepackage com.jue.dp;public class TV

how to set”alt CombinedFragment” at staruml

Hi,I had just found the steps as following.1.create a sequence diagram like the following.2.add a CombinedFragment1 into diagram like the following.3.change the "seq CombinedFragment1 " to "alt CombinedFragment1 "4.select the "Interaction

hunter學習時間管理,我看《超級時間整理術》有感

第一天,物質的窮人,時間的巨人來自封面的摘錄世界上分配最公平的莫過於時間!時間的利用不僅影響甚至決定了人與人的差別!確實,時間的利用可以讓一個人在技術,生活上更好。我們有太多時間被不必要的事情佔據了:反覆的開啟email,微博,QQ,漫無目的地大煲電話粥,在堆成山的案頭上找檔案。。。時間被不知不覺中被各種瑣事撕成片段!我就是整天反覆開啟QQ的人。我的電腦案頭不是山,但也很亂,有很多垃圾,電腦裡的檔案放的位置也不清楚。成功的人總是在別人荒廢的時間裡嶄露頭角的。如何發揮本書的最大作用這本書給了你選擇

Code Fragment-可以取消,重新設定的回調請求。

1.可以在指定的時間得到回調。2.可以取消上一次特定時間的請求。3.在上一次的請求回複之前,可以設定新的請求,並且上次的請求會自動無效。/* * Copyright (C) 2010 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the

hunter學演算法-從一個數組中找到和最大的子數組,數組中可能有負數。

題目:從一個數組中找到和最大的子數組,數組中可能有負數。想法:窮舉法實現次問題,列出所有情況,進行比較記錄!編寫一個計算數組中某個範圍內的和的方法。依次遍曆所有的情況,記錄最大值。C++實現如下://============================================================================// Name : MaxSubArray.cpp// Author : jue// Version ://

Mat 工具 能夠做的事情

一、圖示1.餅狀圖:反應的大的對象的佔用的retained size。a.可以反映出相關對象所在的類,大小,以及classloader。2.柱狀圖:根據不同的類類型列出相關的記憶體佔用情況。a.根據不同的類類型來列出所佔用的大小。比如int[]類型的大小佔用。b.通過list objects->with incoming references找出具體的變數名。c.樹狀圖可以

Code Fragment-提供可選選項的介面勝於單一介面

JSONObject提供了擷取String的一個方法,當查詢失敗的時候,會拋出異常。public String getString(String key) {verifyIsNull();Object o = get(key);if (o != null) {return o.toString();}throw new JSONException("JSONObject[" + JSONUtils.quote(key)+ "] not

Code Fragment-異常情況,返回長度為0的容器好過返回null

異常情況,返回長度為0的容器好過返回null。返回長度為0的容器,後續代碼使用容器前,無需判斷是否為空白。代碼更優美避免很多平時不出現,但是可能會出現的NullPointException.不用去時刻記得檢查容器是否為空白。避免了很多ForceClose。一些錯誤的情境很難複現。異常情況,直接返回nullpublic static List<String> getItems1() {if (new Random().nextInt(10) > 5) {//

hunter學演算法-判斷兩個鏈表相交於某結點

問題:如何判斷兩個鏈表相交於某結點?分析:圖紙描述鏈表相交時候情境!發現相交與不相交的區別與特點!結論:發現相交的鏈表,相交點後面的結點都是相同的,通過簡化,可以得出最後一個結點必是同一個結點。//============================================================================// Name : LinedListCrossing.cpp// Author : jue// Version :/

hunter的Not Do List

第一周,not do list每天要完成下表分數not do周一周二周三周四周五周六周日3即時任務能拖就拖1      3簡單的事情猶豫不決1      3做任務前,沒有計劃       3給別人臉色1               2非獎勵期間上網頁       2做一件事,想另一件1      2非獎勵期間上QQ                1與別人溝通時,非正視       1東瞅西看11      1沒有友好的給出回應                 總分15      

hunter學演算法-非遞迴對於Fibonacci數列求值的最佳化

先上codeclass Test{public static void main(String args[]){int n = 45;long time1 = now();System.out.print("fibonacci("+n+") = " + fibonacci(n) );System.out.println(" cost: " + (now() - time1));time1 = now();System.out.print("fibonacci2("+n+")

Code Fragment-複雜的運算式加入解釋型變數。

本文參考自《編寫可讀代碼的藝術》,這本書寫的非常好!複雜的表達的缺點:可讀性太差。閱讀時間很久。維護難度大。一個例子:每次讀都需要花十幾秒。if (request.user.id == document.owner_id) {System.out.println("User can edit this file");}if (request.user.id != document.owner_id) {System.out.println("The document is read only."

Code Fragment-使用摩根定理在判斷條件中

本文參考自《編寫可讀代碼的藝術》,這本書寫的非常好!對於一個布林運算式,有兩種寫法:! (a  or b or c)  =  ( !a )  and ( !b ) and ( !c )! ( a and b and c) = ( !a ) or ( !b ) or (!c)延伸到編程,右面的運算式會感覺更容易懂些。一個例子if (!(fileExist && !isProcted)) {System.out.println("Sorry, could not read the

總頁數: 61357 1 .... 13038 13039 13040 13041 13042 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.