JAVA開發隨記

想到一點寫一點,遇到一點補充一點。

1、成員變量

在定義成員變量時盡量不要直接賦值,最好是在初始化信息的時候進行賦值操作。如果需要在屬性定義的時候進行賦值,那么請用final修飾該屬性。錯誤實例

class A extends B {/** 到期日距離當前時間默認值 */private int maxDueYear = 2;public A() {super();showMaxDueYear();}@Overrideprotected void bind() {maxDueYear = XXservice.getDueDateMaxYear();// 讀取數據庫配置}/*** 顯示數據庫存儲的對應數據值*/private void showMaxDueYear(){System.out.println(maxDueYear);//恒等于2}
}class B{protected B() {bind();}protected void bind(){};
}	/** 到期日距離當前時間默認值 */private int maxDueYear = 2;public A() {super();showMaxDueYear();}@Overrideprotected void bind() {maxDueYear = XXservice.getDueDateMaxYear();// 讀取數據庫配置}/*** 顯示數據庫存儲的對應數據值*/private void showMaxDueYear(){System.out.println(maxDueYear);//恒等于2}
}class B{protected B() {bind();}protected void bind(){};
}


盡量使用標準的Bean開設置VO對象。

?

在通過JAVA去編輯界面時(類似GWT,SWT)都可以通過對象.屬性去獲取VO對象屬性的
值。不過當這樣獲取屬性值時,需要將屬性定義為public,破壞了Bean約定。

?

其實通過查看源碼,你會發現,編譯器在獲取VO對象值的時候,都是通過get方法去獲取的。我們完全可以通過新建一個get方法來完成同樣的事情。

public static final String[] PROPS = { "child.code", "child.name"};//model對應VO的值
class C{public D child;public D getChild() {return child;}public void setChild(D child) {this.child = child;}}
class D{private String code;private String name;public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}	public D child;public D getChild() {return child;}public void setChild(D child) {this.child = child;}}
class D{private String code;private String name;public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

換種方式

public static final String[] PROPS = { "childCode", "childName"};//model對應VO的值
class C{private D child;public D getChild() {return child;}public void setChild(D child) {this.child = child;}public String getChildCode(){return child.getCode();}public String getChildName(){return child.getName();}}

2、關于JAVA時間類的操作

在使用時間類時,最好先建立一個統一的工具類,大家在使用時都嚴格按照工具類的約定去執行。

3、泛型

好久沒用泛型,記一下,加深下映象

private <K, V> void putInfoToMap(Map<K, Set<V>> map, K key, V value) {if (!map.keySet().contains(key)) {map.put(key, new HashSet<V>());}map.get(key).add(value);
}

?

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/273307.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/273307.shtml
英文地址,請注明出處:http://en.pswp.cn/news/273307.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

PHP反射ReflectionClass、ReflectionMethod 入門教程

PHP反射ReflectionClass、ReflectionMethod 入門教程 作者&#xff1a;SNSGOU 發布于&#xff1a;2014-03-16 16:44:00 分類&#xff1a;PHP 瀏覽(6145) PHP5 具有完整的反射API&#xff0c;添加對類、接口、函數、方法和擴展進行反向工程的能力。 反射是什么&#xff…

Oracle開發常用知識

一、利用游標實現循環嵌套 在對oracle數據進行操作時我們會經常碰到循環甚至循環嵌套的情況。這個時候游標的作用就體現出來了。 DECLAREvId NUMBER(19);vDate DATE;--a表游標定義CURSOR a_cursor ISSELECT DISTINCT o.employeeId FROM operations o WHERE o.employeeId IS N…

條件控制(if ) ( case)

一&#xff1a;IF應用格式 (1)                  (2)                (3) IF 條件 THEN           IF 條件 THEN            IF 條件1 THEN --代碼塊               --代碼塊          …

使用臨時表解決union和order by不能同時使用的問題

最近遇見了這樣一個問題&#xff0c;有4張表&#xff0c;A&#xff08;單據&#xff09;表&#xff0c;B&#xff08;產品&#xff09;表&#xff0c;C&#xff08;產品類型&#xff09;&#xff0c;D&#xff08;單據產品關聯表&#xff09;。 B表有唯一對應的類型C&#xff…

2.3線性表的鏈式存儲和運算—雙向鏈表

以上討論的單鏈表的結點中只有一個指向其后繼結點的指針域next&#xff0c;因此若已知某結點的指針為p&#xff0c;其后繼結點的指針則為p->next &#xff0c;而找其前驅則只能從該鏈表的頭指針開始&#xff0c;順著各結點的next 域進行&#xff0c;也就是說找后繼的時間性能…

Oracle常用字符串操作

參考&#xff1a; 一、oracle操作字符串&#xff1a;拼接、替換、截取、查找&#xff1b; 二、oracle中的trim函數使用介紹 --字符串去空格 --輸出:a b c; SELECT TRIM( a b c ) || ; FROM dual; SELECT TRIM(BOTH FROM a b c ) || ; FROM dual; --輸出: a …

linux下面安裝maven

maven作為最近比較火的項目管理工具&#xff0c;對項目的jar包及其開元添加相應的插件的管理&#xff0c;很方便。 安裝maven&#xff1a; 在官網上面去下載最新的maven的壓縮包&#xff0c;apache-maven-3.3.1-bin.tar.gz. 將下載的壓縮包保存/usr/local/maven下&#xff0c;進…

Hibernate懶加載問題

剛開始接觸這種數據持久化框架時&#xff0c;使用的是Maybatis&#xff0c;相較于最原始的JDBCSQL模式&#xff0c;Maybatis簡直就是神器&#xff0c;特別是在用過Maybatis動態SQL后&#xff0c;簡直就開始對Maybatis愛不釋手。后來工作要求&#xff0c;又接觸到了Hibernate&am…

實現點擊按鈕后,倒計時60秒才能再次點擊

轉載于:https://www.cnblogs.com/liu201312/p/4447710.html

通過棧(Stack)實現對樹的遍歷

說到數的遍歷樹&#xff0c;長期以來的第一印象都是通過遞歸去實現。然而今天看了某位前輩的代碼&#xff0c;才發現使用棧去實現遍歷是那么簡單。理論上通過數組也是可以實現同等功能的&#xff0c;畢竟Stack也是通過數據去實現的。 package com.sysway.ui.widget;import jav…

設計模式_01_單一原則

設計模式_01_單一原則 package designPatternOf_01; /*** 單一原則示例&#xff1a;動物呼吸* 引入的問題&#xff1a;魚不吸空氣&#xff0c;吸水*/ public class SinglePrinciple_01 {public static void main(String[] args) {Animal animalnew Animal();animal.breath(&quo…

StroyBoard中UICollectionView中添加Header和footer

到Storyboard中&#xff0c;選擇collection view controller中的"Collection View"。在Attributes inspector中&#xff0c;選擇"Section Header"和"Section Footer",一旦選中你就會在屏幕中看到下面的的顯示&#xff1a; 最重要的是&#xff0c…

樹形結構數據匯總查詢解決方案+優化求助

最近遇到一個地區數據匯總的問題&#xff0c;地區下的地址呈樹形結構&#xff0c;&#xff08;簡化結構&#xff09;如A市下有B、C區&#xff0c;B區下有D、E街道。先要查詢所有地區的人數&#xff08;包括子區域&#xff09;&#xff0c;如A的人數直屬A的人數B的人數C的人數D的…

find 是區分大小寫的。對于不區分大小寫的寫法(轉載)

轉自&#xff1a;http://justwinit.cn/post/3633/ 默認情況下&#xff0c;find 是區分大小寫的。對于不區分大小寫的 find&#xff0c;將 -iname 測試替換為 -name 測試。find downloads -iname "*.gif"downloads/.xvpics/Calendar05_enlarged.gifdownloads/lcmgcfe…

ORACLE會話以及SQL執行信息查詢

select t.BLOCKING_SESSION,t.SQL_ID,t.SID,t.SERIAL#,t.MACHINE,t.PROGRAM,t.ACTION,t.LOGON_TIME "登錄時間",trunc((sysdate - t.LOGON_TIME) * 24 * 60 * 60) || s "登錄時長",trunc(nvl(s.ELAPSED_TIME / decode(s.EXECUTIONS, 0, 1, s.EXECUTIONS) /…

Dom4j 學習筆記

dom4j 是一種解析 XML 文檔的開放源代碼 XML 框架。dom4j下載地址 本文主要記載了一些簡單的使用方法。 一、xml文件的解析 dom4j既可以解析普通的xml文件&#xff0c;也可以解析一個InputStream&#xff0c;先看看xml文件長什么樣子&#xff1a; <books><book>&l…

交叉連接(CROSS JOIN)的實際應用

一次偶然的機會&#xff0c;使用到了萬年不用的交叉連接&#xff08;CROSS JOIN&#xff09; 業務場景如下&#xff1a; 1、存在多個運營商&#xff0c;每個運營商下面都有各種類型的設備&#xff0c;不同運營商的設備不完全相同&#xff1b; 2、任何設備有且僅有兩種用途‘…

Atitit.操作注冊表 樹形數據庫 注冊表的歷史 java版本類庫總結

Atitit.操作注冊表 樹形數據庫 注冊表的歷史 java版本類庫總結 1. 注冊表是樹形數據庫 1 2. 注冊表的由來 1 3. Java 操作注冊表 2 3.1. 使用Preferences API &#xff08;限定訪問路徑了&#xff09; 2 3.2. 使用JNI 3 3.3. Jregistrykey 推薦 4 3.4. Jregistry 4 4. org.ope…

C# xml文件讀取與修改

c#讀寫xml文件已知有一個XML文件&#xff08;bookstore.xml&#xff09;如下&#xff1a; Code<?xml version"1.0" encoding"gb2312"?><bookstore> <book genre"fantasy" ISBN"2-3631-4"> <title>Obero…

外連接從表過濾

1、使用left join時從表的過濾 WITH a AS( SELECT A aid FROM dual UNION ALL SELECT B FROM dual UNION ALL SELECT C FROM dual UNION ALL SELECT D FROM dual UNION ALL SELECT E FROM dual ), b AS( SELECT A aid,10 num,1 type FROM dual UNION ALL SELECT B,20,2 FROM d…