JAVA效能最佳化需要注意的26個地方

下面是參考網路資源總結的一些在Java編程中儘可能要做到的一些地方。1.盡量在合適的場合使用單例使用單例可以減輕載入的負擔,縮短載入的時間,提高載入的效率,但並不是所有地方都適用於單例,簡單來說,單例主要適用於以下三個方面:控制資源的使用,通過線程同步來控制資源的並發訪問;控制執行個體的產生,以達到節約資源的目的;控制資料共用,在不建立直接關聯的條件下,讓多個不相關的進程或線程之間實現通訊。2.盡量避免隨意使用靜態變數要知道,當某個對象被定義為stataic的變數所引用,那麼GC通常是不會回收這

轉載的一篇關於如何最佳化JAVA代碼及提高效率的文章

 可供程式利用的資源(記憶體、CPU時間、網路頻寬等)是有限的,最佳化的目的就是讓程式用儘可能少的資源完成預定的任務。最佳化通常包含兩方面的內容:減小代碼的體積,提高代碼的運行效率。本文討論的主要是如何提高代碼的效率。在Java程式中,效能問題的大部分原因並不在於Java語言,而是在於程式本身。養成好的代碼編寫習慣非常重要,比如正確地、巧妙地運用java.lang.String類和java.util.Vector類,它能夠顯著地提高程式的效能。下面我們就來具體地分析一下這方面的問題。1、    

java解析json字串

String sJson = "[{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'3','spsl':'4'}]";JSONArray jsonArray = new JSONArray(sJson);int iSize = jsonArray.length();System.out.println("Size:"+ iSize);for(int i = 0; i < iSize; i++)

轉載 —JAVA代碼編寫的30條建議

1) 類名首字母應該大寫。欄位、方法以及對象(控制代碼)的首字母應小寫。對於所有標識符,其中包含的所有單詞都應緊靠在一起,而且大寫中間單詞的首字母。例如: ThisIsAClassName thisIsMethodOrFieldName 若在定義中出現了常數初始化字元,則大寫static final基本類型標識符中的所有字母。這樣便可標誌出它們屬於編譯期的常數。

java.sql.SQLException: Cannot convert value ’0000-00-00 00:00:00′ from column 7 to TIMES

在Mysql資料庫中使用DATETIME類型來儲存時間,使用JDBC中讀取這個欄位的時候,應該使用 ResultSet.getTimestamp(),這樣會得到一個java.sql.Timestamp類型的資料。在這裡既不能使用

Java學習路徑(二)書籍篇

 學習一門新的知識,不可能指望只看一本,或者兩本書就能夠完全掌握。需要有一個循序漸進的閱讀過程。我推薦Oreilly出版的Java系列書籍。  在這裡我只想補充一點看法,很多人學習Java是從《Thinking in Java》這本書入手的,但是我認為這本書是不適合初學者的。我認為正確的使用這本書的方法應該是作為輔助的讀物。《Thinking in Java》並不是在完整的介紹Java的整個體系,而是一種跳躍式的寫作方法,是一種類似tips的方法來對Java很多知識點進行了深入的分析和解釋。  

真正最正確的用BAT運行JAVA不顯示DOS視窗(連閃一下都不閃)

今天寫一個獨立於RCP項目之外的SWT小工具,需要用批處理啟動,偶寫了一個批處理沒閃DOS視窗,看得同事一愣一愣的。於是趕快把自己當年一點心得和大家分享下。很多朋友在WINDOWS下會用批處理去啟動自己的java程式,一般的寫法是運行class:java xx運行jar:java -jar xxx.jar但是這樣運行會有一個噁心的對話方塊停在那直到我們關閉程式。於是很多人說可以這樣運行class:start javaw xx運行jar:start javaw -jar

java匯出excel java操作檔案。檔案夾 java製作zip

/** * 匯出老師資訊 */public static boolean exportTeach(String filePath, String teachName,String grade, String classes, String subject) {// 第一步,建立一個webbook,對應一個Excel檔案HSSFWorkbook wb = new HSSFWorkbook();// 第二步,在webbook中添加一個sheet,對應Excel檔案中的sheetHSSFSheet

Java中HashMap遍曆的兩種方式

轉]Java中HashMap遍曆的兩種方式原文地址: http://www.javaweb.cc/language/java/032291.shtml第一種:  Map map = new HashMap();  Iterator iter = map.entrySet().iterator();  while (iter.hasNext()) {  Map.Entry entry = (Map.Entry) iter.next();  Object key = entry.getKey(); 

JAVA學習順序

java分成J2ME(行動裝置 App開發),J2SE(案頭應用開發),J2EE(Web企業級應用),所以java並不是單機版的,只是物件導向語言。建議如果學習java體系的話可以這樣去學習: *第一階段:Java基礎,包括java文法,物件導向特徵,常見API,集合架構; *第二階段:java介面編程,包括AWT,事件機制,SWING,這個部分也可以跳過,用的時候再看都能來及; *第三階段:java

Java 編程中異常處理的最佳實務

這裡是我收集的10個Java編程中進行異常處理的10最佳實務。在Java編程中對於檢查異常有褒有貶,強制處理異常是一門語言的功能。在本文中,我們將盡量減少使用檢查型異常,同時學會在Java編程中使用檢查型VS非檢查型異常。1)為可恢複的錯誤使用檢查型異常,為編程錯誤使用非檢查型錯誤。選擇檢查型還是非檢查型異常,對於Java編程人員來說,總是讓人感到困惑。檢查型異常保證你對錯誤條件提供異常處理代碼,這是一種從語言到強制你編寫健壯的代碼的一種方式,但同時會引入大量雜亂的代碼並導致其不可讀。當然,如果

java去除字串中的空格、斷行符號、分行符號、定位字元

import java.util.regex.Matcher;import java.util.regex.Pattern;/** * @author lei * 2011-9-2 */public class StringUtils {public static String replaceBlank(String str) {String dest = "";if (str!=null) {Pattern p =

java 中文轉碼demo大全

public static void main(String[] argv){try { System.out.println("中文");//1 System.out.println("中文".getBytes());//2 System.out.println("中文".getBytes("GB2312"));//3 System.out.println("中文".getBytes("ISO8859_1"

追MM與Java的23種設計模式

1、FACTORY—追MM少不了請吃飯了,麥當勞的雞翅和肯德基的雞翅都是MM愛吃的東西,雖然口味有所不同,但不管你帶MM去麥當勞或肯德基,只管向服務員說“來四個雞翅”就行了。麥當勞和肯德基就是生產雞翅的Factory   原廠模式:客戶類和工廠類分開。消費者任何時候需要某種產品,只需向工廠請求即可。消費者無須修改就可以接納新產品。缺點是當產品修改時,工廠類也要做相應的修改。如:如何建立及如何向用戶端提供。

Java Servlet實現同一帳號後登陸擠掉前一個登陸(類似QQ)

實作類別似QQ登陸功能,帳號已在一處登陸,在另外一處登陸時,將擠掉前一次的登入。原理簡介:主要是servlet中對使用者登入時的處理,servlet中維護了使用者和sessionId的關係以及使用者和session的關係,儲存在兩個map中,當使用者登入時會向map中新增一條記錄,如果發現map中已經有了該使用者,則將該使用者對應的記錄刪掉,注意是將map中的記錄刪掉而不是將session銷毀,然後在該session中放入給使用者提示的資訊,再將新使用者的資訊放入map中。在頁面中需要不斷的驗證

使用Mina傳輸Java對象

This is apache-mina-2.0.4, please drink code....下面是所要傳輸的實體類UserInfo.javapackage com.mina.model;import java.io.Serializable;/** * @see Mina傳輸的實體類,要求其實現Serializable介面 */@SuppressWarnings("serial")public class UserInfo implements Serializable{private

Java中的冒泡排序法and針對數組的普通尋找法和二分尋找法

下面是冒泡排序法的範例程式碼package com.jadyer.sort;/** * 冒泡排序法 * @see JDK本身也提供了數組排序API,不妨參考一下,即Arrays.sort(array) */public class BubbleSort {public static void main(String[] args) {bubbleSort(new int[]{4,6,9,8,3,2});}public static void bubbleSort(int[]

Java類比單向鏈表和雙向鏈表的實現

下面示範的Java類比的單向鏈表的實現package com.jadyer.sort;/** * 類比單向鏈表 * @author 宏宇 * @editor Jan 23, 2012 7:55:21 PM * @see ================================================================================================== * @see 【資料結構的分類:線性資料結構和非線性資料結構】 * @see 1)

Java多線程之wait()和notify()

直接看測試代碼吧,細節之處,詳見注釋package com.jadyer.thread.wait;/** * Java多線程之wait()和notify()的妙用 * @see ================================================================================================================= * @see 問題:同時啟動兩個線程和同時啟動四個線程,控制台列印結果是不同的 * @see

【JavaSE入門系列】第01章_Java技術入門

第01章Java技術入門——v512工作室   編輯:玄玉何為JavaJava虛擬機器 我的部落格JDK安裝配置Java運行環境v512工作室Java程式結構Java自動垃圾收集中科院新科海學校何為Java簡單概述:Java不僅是一種程式設計語言,更是一種功能強大、完備的開發和運行環境                     官方網址為http://java.sun.com。Sun(Stanford University Network)1982年2月成立,目前全球僱員2萬6千餘人發展曆程:19

總頁數: 4058 1 .... 690 691 692 693 694 .... 4058 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.