Time of Update: 2017-01-19
android開發,除了使用原生態的開發方式之外,還可以使用java+html+javascript混合開發的方式來開發,這樣可以節省大量的開發時間,同時還可以使不同裝置的使用者獲得相同的使用者體驗。好了,廢話不多說,先來看看今天要做什麼。 主要是實現一個簡單的註冊功能,先用jquery
Time of Update: 2017-01-19
現在項目中用到需要定時去檢查檔案是否更新的功能。timer正好用於此處。用法很簡單,new一個timer,然後寫一個timertask的子類即可。代碼如下:package comz.autoupdatefile; import java.util.Timer; import java.util.TimerTask; public class M { public static void main(String[] args) { // TODO todo.generated by
Time of Update: 2017-01-19
定義:封裝某些作用於某種資料結構中各元素的操作,它可以在不改變資料結構的前提下定義作用於這些元素的新的操作。類型:行為類模式類圖:例子:例如,思考一下添加不同類型商品的購物車,當點擊結算的時候,它計算出所有不同商品需付的費用。現在,計算邏輯即為計算這些不同類型商品的價格。或者說通過訪問者模式我們把此邏輯轉移到了另外一個類上面。讓我們實現這個訪問者模式的例子。為了實現訪問者模式,最先需要做的是建立能夠被添加到購物車中代表不同類型商品(itemElement)的類。ItemElement.javap
Time of Update: 2017-01-19
迴圈控制可能存在一種情況,當我們需要執行的代碼塊數次,通常被稱為一個迴圈。Java有非常靈活的三迴圈機制。可以使用以下三種迴圈之一: while 迴圈 do...while 迴圈 for 迴圈截至Java5,對增強for迴圈進行了介紹。這主要是用於數組。while 迴圈while迴圈是一個控制結構,可以重複的特定任務次數。文法while迴圈的文法是:while(Boolean_expression){ //Statements}在執行時,如果布林運算式的結果為真,則迴圈中的動作將被執行。
Time of Update: 2017-01-19
Java語言的一個優點就是取消了指標的概念,但也導致了許多程式員在編程中常常忽略了對象與引用的區別,本文會試圖澄清這一概念。並且由於Java不能通過簡單的賦值來解決對象複製的問題,在開發過程中,也常常要要應用clone()方法來複製對象。本文會讓你瞭解什麼是影子clone與深度clone,認識它們的區別、優點及缺點。 看到這個標題,是不是有點困惑:Java語言明確說明取消了指標,因為指標往往是在帶來方便的同時也是導
Time of Update: 2017-01-19
本文將討論以下4個問題 1. java Cloneable介面實現深拷貝 2. java 序列化實現深拷貝 3. 號稱最快的深拷貝二方庫cloning源碼分析 4. 幾種拷貝方式速度的比較深拷貝的概念本文就不說了。在C++中實現深拷貝一般情況下重載賦值操作符 “=”
Time of Update: 2017-01-19
本文執行個體講述了java實現的五子棋遊戲代碼,分享給大家供大家參考,具體代碼如下package gyb.exam; import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.Graphics;import java.awt.Point;import java.awt.Toolkit;import java.awt.event.
Time of Update: 2017-01-19
在開發測試載入器的應用後台,經常聽到同事說要做個定時任務把做Tlog,或者資料清理,包括做些複雜的業務計算邏輯,在選擇定時任務的時候,怎麼能夠快速實現,並且選擇一種更適合自己的方式呢? 我這裡把定時任務的實現收集整理了一些方法,希望可以幫到剛開始做定時任務的同學,寫得不對的地方請指正。一 Java 基本的定時任務,總結方法有三種:1.1
Time of Update: 2017-01-19
單一職責原則:一個類,只有一個引起它變化的原因。為什麼需要單一職責原則?如果一個類有多個原因要去修改它,那麼修改一個功能時,可能會讓其他功能產生Bug,所以一個類最好只有一個職責。但實際應用中還是比較難實現的,我們只能是盡量符合這個原則。有時候,開發人員設計介面的時候會有些問題,比如使用者的屬性和使用者的行為被放在一個介面中聲明。這就造成了業務對象和商務邏輯被放在了一起,這樣就造成了這個介面有兩種職責,介面職責不明確,按照SRP的定義就違背了介面的單一職責原則了。下面是個例子:package
Time of Update: 2017-01-19
描述符描述符是你添加到那些定義中來改變他們的意思的關鍵詞。Java 語言有很多描述符,包括以下這些: 可訪問描述符 不可訪問描述符 應用描述符,你可以在類、方法、變數中加入相應關鍵字。描述符要先於聲明,如下面的例子所示(斜體):public class className { // ...}private boolean myFlag;static final double weeks = 9.5;protected static final int BOXWIDTH =
Time of Update: 2017-01-19
一. 什麼是Native Method 簡單地講,一個Native Method就是一個java調用非java代碼的介面。一個Native Method是這樣一個java的方法:該方法的實現由非java語言實現,比如C。這個特徵並非java所特有,很多其它的程式設計語言都有這一機制,比如在C++中,你可以用extern "C"告知C++編譯器去調用一個C的函數。 "A native method is a Java method
Time of Update: 2017-01-19
continue和break可以改變迴圈的執行流程,但在多重迴圈中,這兩條語句無法直接從內層迴圈跳轉到外層迴圈。在C語言中,可以通過goto語句實現多重迴圈的跳轉,但在非迴圈結構中使用goto語句會使程式的結構紊亂,可讀性變差。因此Java就發明了一種帶標籤的continue和break語句,實際上它是一種帶限制的專門用於迴圈的goto語句。通常情況下我們使用的continue(或break)語句不帶標籤,這時也就是預設在當前的迴圈中執行continue(或break)語句。帶標籤的迴圈實際上就
Time of Update: 2017-01-19
建造者模式(Builder Pattern)主要用於“分步驟構建一個複雜的對象”,在這其中“分步驟”是一個穩定的演算法,而複雜物件的各個部分則經常變化。因此, 建造者模式主要用來解決“對象部分”的需求變化。 這樣可以對物件建構的過程進行更加精細的控制。package com.shejimoshi.create.Builder;/** * 功能:意圖是將一個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示 * 適用性: *
Time of Update: 2017-01-19
將APK發布到市集或接入第三方的SDK時,有時需要提供APK的簽名摘要資訊,可以通過摘要演算法MD5或SHA-1來擷取簽名的摘要,除了擷取自己的APK簽名,也可以擷取手機上其他已安裝的APK簽名,只需要傳入其他APK的包名即可。private static final char[] HEX_CHAR = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; /**
Time of Update: 2017-01-19
類載入器java類載入器就是在運行時在JVM中動態地載入所需的類,java類載入器基於三個機制:委託,可見,單一。把classpath下的那些.class檔案載入進記憶體,處理後成為位元組碼,這些工作是類載入器做的。 委託機制指的是將載入類的請求傳遞給父載入器,如果父載入器找不到或者不能載入這個類,那麼再載入他。 可見度機制指的是父載入器載入的類都能被子載入器看見,但是子載入器載入的類父載入器是看不見的。 單一性機制指的是一個類只能被同一種載入器載入一次。
Time of Update: 2017-01-19
泛型將集合中的元素限定為一個特定的類型。術語 ArrayList<E> -- 泛型型別 ArrayList -- 原始類型 E -- 型別參數 <> -- 讀作"typeof" ArrayList<Integer> -- 參數化類別型 Integer -- 實際型別參數 幾點注意:參數化型別和原始類型相互相容ArrayList collection1 = new
Time of Update: 2017-01-19
反射反射:將類的屬性和方法映射成相應的類。反射基本使用擷取Class類的三種方法: 類名.class 對象名.getClass() Class.forName("要載入的類名") 根據API寫就行了,大致流程就是: 用上述三種方式之一擷取特定類的Class類,即該類對應的位元組碼 調用Class對象的getConstructor(Class<?>... parameterTypes)擷取構造方法對象
Time of Update: 2017-01-19
本例輸入為兩個任意尺寸的矩陣m * n, n * m,輸出為兩個矩陣的乘積。計算任意尺寸矩陣相乘時,使用了Strassen演算法。程式為自編,經過測試,請放心使用。基本演算法是:1.對於方陣(正方形矩陣),找到最大的l, 使得l = 2 ^ k, k為整數並且l < m。邊長為l的方形矩陣則採用Strassen演算法,其餘部分以及方形矩陣中遺漏的部分用蠻力法。2.對於非方陣,依照行列相應添加0使其成為方陣。StrassenMethodTest.javapackage
Time of Update: 2017-01-19
本文執行個體介紹了Java基於Socket的檔案傳輸案例,分享給大家供大家參考,具體內容如下1、Java代碼package com.wf.demo.socket.socketfile; import java.net.*; import java.io.*; /** * 2.socket的Util輔助類 * * @author willson * */ public class ClientSocket { private String ip; private int
Time of Update: 2017-01-19
定義:定義對象間一種一對多的依賴關係,使得當每一個對象改變狀態,則所有依賴於它的對象都會得到通知並自動更新。類型:行為類模式類圖:在軟體系統中經常會有這樣的需求:如果一個對象的狀態發生改變,某些與它相關的對象也要隨之做出相應的變化。比如,我們要設計一個右鍵菜單的功能,只要在軟體的有效地區內點擊滑鼠右鍵,就會彈出一個菜單;再比如,我們要設計一個自動部署的功能,就像eclipse開發時,只要修改了檔案,eclipse就會自動將修改的檔案部署到伺服器中。這兩個功能有一個相似的地方,那就是一個對象要時刻