Time of Update: 2018-07-26
要想講清楚nio的原理和它的優點得先清楚Java應用程式的檔案讀寫原理和虛擬記憶體的原理。Java檔案讀取原理可參見如下圖: 當應用程式需要讀取檔案的時候,核心首先通過DMA技術將檔案內容從磁碟讀入核心中的buffer,然後Java應用進程再從核心的buffer將資料讀取到應用程式的buffer。 為了提升I/O效率和處理能力,作業系統採用虛擬記憶體的機制。虛擬記憶體也就是我們常說的交換記憶體,它實際上是硬碟上的檔案,虛擬記憶體有兩個作用: 1.
Time of Update: 2018-07-26
首先,在Studio中運行java main方法理論上肯定可行的,畢竟有Studio中內建有jdk在裡面。 如果不能運行main方法,肯定是哪個地方沒做對。 我開始建立JavaLib的Moudle建立java類,運行報錯如下: Error:Gradle: A problem occurred configuring root project 'newTest'.> Could not resolve all files for configuration ':classpath'
Time of Update: 2018-07-26
譯文連結:http://www.codeceo.com/article/java-hashmap-value-sort.html英文原文:How to Sort HashMap Based On Values in Java翻譯作者:碼農網 – 小峰 Java中HashMap是一種用於儲存“鍵”和“值”資訊對的資料結構。不同於Array、ArrayList和LinkedLists,它不會維持插入元素的順序。
Time of Update: 2018-07-26
1.原因 用戶端通過IE提交時用的預設編碼是UTF-8,而當我們用Myeclipse的時候的服務端接受的時候用的是iso-8859-1 2.解決方案 服務端也用UTF-8編碼 byte[] result = request.getParameter("titile").getBytes("iso-8859-1") ; title = new String(result, "UTF-8"
Time of Update: 2018-07-26
應用情境:將要操作的檔案或者目錄一同放在工程的某個目錄下,連同工程一起部署放便管理。 最容易想到的方式為system.getProperty("user.dir");但是這種方法在發布情況和對於Eclipse的情況擷取到的地址是不同的,發行的動態web工程是system.getProperty("user.dir")值為:D:/eclipse/,對於Eclipse則是D:/workspace/test01/。
Time of Update: 2018-07-26
介面: 是一些方法特徵的集合,而這些方法可以被多個實作類別去各自實現。介面主要特徵: 1、介面中的成員變數隱士的被定義為公開的靜態常量 2、介面中的方法是抽象的,並且必須是公開的 3、介面是用來被類實現的或者被介面繼承的,其不能有自己的構造子介面的作用:
Time of Update: 2018-07-26
什麼是this:表示當前對象。 this主要存在兩個位置: 構造器中: 就表示當前建立的對象方法中: 哪一個對象調用this所在的方法,那麼此時this就表示哪一個對象。 當一個對象建立之後,JVM會分配一個引用自身的引用:this使用this: 1、解決成員變數和參數(局部變數)之間的二義性,必須使用; 2、同類中執行個體方法間互調(此時可以省略); 3、將this作為參數傳遞給另一個方法; 4、將this作為方法的傳回值(鏈式方法編程)
Time of Update: 2018-07-26
1、JAVA中,char佔2位元組,16位。可在存放漢字 2、char賦值 char a='a'; //任意單個字元,加單引號。 char a='中';//任意單個中文字,加單引號。 char a=111;//整數。0~65535。十進位、八進位、十六進位均可。輸出字元編碼表中對應的字元。註:只能放單個字元。 3、char運算 char類型是可以運算的因為char在ASCII等字元編碼表中有對應的數值。
Time of Update: 2018-07-26
網路編程的基本概念 IP和連接埠 IP是互連網中連網裝置的唯一標識,而網路編程是和遠端電腦的通訊,所以必須要能定位到遠端電腦,IP就是用來解決此類問題;一台電腦中可能有很多進程,具體和哪一個進程進行通訊,這就得靠連接埠來識別。 TCP和UDP協議 TCP是Tranfer Control
Time of Update: 2018-07-26
解決方案文字文件中拷貝或檔案儲存有問題,將檔案使用UE開啟,重新儲存為Utf-8 無bom格式即可。 ---不可見字元會引起此類異常。--------- 在控制台顯示的是java.lang.NumberFormatException: For input string: "15" 實際上的資訊是"?15" XXX20171019-?15 c6:58:d6:3b:2a:b5 192.168.17.20 * 0 &
Time of Update: 2018-07-26
方法一:使用Apache的common-io 1.maven項目pom.xml <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.5</version> </dependency>2.代碼 import
Time of Update: 2018-07-26
一、什麼是安全執行緒 我們所說的安全執行緒的話題都是基於一個變數會被多個線程訪問的這樣一個前提下,如果只是單線程應用自然就不會出現這種問題。 一個變數被多個線程訪問我們稱這個變數是共用的。而一個變數在其生命週期中可以被修改,則稱這個變數時可變的。網路上有很多人試圖給安全執行緒下定義,林林總總反正很多,但是歸根到底安全執行緒的核心點就是正確性。試想下,多個線程訪問某個共用的可變的變數的時候,其目的就是為了得到一個正確的資料而已。
Time of Update: 2018-07-26
同一個線程(使用者)拿到同一個對象 package cn.hncu.threadLocalUtil;import java.util.Random;public class ThreadLocalUtil { private static ThreadLocal<Object> t=new ThreadLocal<Object>(); //下面這一句是示範使用我們自己的MyThreadlocal //線程管理池
Time of Update: 2018-07-26
食物類,動物類,飼養員類,測試類別。實現飼養員給動物餵食物。 食物類: 屬性name 動物類: 屬性name 方法void eat 飼養員類: 屬性name 方法void feed 測試類別列印的結果: 張三喂大熊貓 大熊貓吃竹筍 package demo03; public class Animal { public String name;public Food f;public void eat(){ System.out.println(name+"
Time of Update: 2018-07-26
筆者本人從最初開始接觸C語言、C++、VC++、彙編到後來接觸PHP以及Java,在這些語言的使用過程中深刻感受到這些語言都是相同的編寫思路,代碼編寫的方式也是大同小異,目前認為Java語言的亮點是package以及反射機制。 package不僅提供了命名空間功能,還可以用來區分代碼模組(C語言需要建立刷選器添加模組檔案,工程目錄中為了方便看出具體模組檔案需要儲存到與刷選器同名或類似的檔案夾內)。
Time of Update: 2018-07-26
一般面試中java Exception(runtimeException )是必會被問到的問題 常見的異常列出四五種,是基本要求。更多的。。。。需要注意積累了 常見的幾種如下: NullPointerException - null 指標引用異常 ClassCastException - 類型強制轉換異常。
Time of Update: 2018-07-26
在JS中,字串類型String和數群組類型Array都有一個叫length的長度屬性值,可以用[對象名.length]的方式讀取出來,這裡的length是對象固有的屬性,不是方法,因此不用.length(),而是直接用.length。
Time of Update: 2018-07-26
資料結構一般都是由c++來講解並且實現的,所以如果像我這種沒學過c++而學過Java的就很尷尬了,不過不要以為Java不能實現資料結構那些常用的表啊,樹啊之類的(不知道有沒有同學以為Java沒有指標,所以一些功能無法實現呢。這是錯誤的噢)。這個學期學了資料結構這本書,所以我打算用Java實現其中表,隊,棧,樹。如果你有興趣可以持續關注我後續操作。我的個人部落格為我的部落格。 棧 棧是一種很奇特的結構,因為它是“先進後出”的,也就是一批進去的元素中,
Time of Update: 2018-07-26
JDK動態代理的實現及原理 作者:二青 郵箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef
Time of Update: 2018-07-26
翻譯:Cheramiemail:cherami@163.net 原文:http://developer.java.sun.com/developer/TechTips/2000/tt0815.html如果你經常使用UNIX 或者 Windows shells (命令處理器),你可能經常像這樣使用I/O重新導向: $ command >outfile這個用法是說:運行一個命令,