最后的逗號(hào)
String[] strs = {"1", "2", "3", };
System.out.println(strs.length); //3
這竟然是符合語(yǔ)法的!
ArrayInitializer:???????
{ [VariableInitializer {, VariableInitializer} [,]] }
VariableInitializer:?ArrayInitializer?Expression
http://java.sun.com/docs/books/jls/third_edition/html/syntax.html#18.1
"This is good for quick testing. I always use this. In my case, I have a table, sometimes I care some columns, other times I care some other columns, so I am lazy to remove the last comma when I change columns. It's convenient."
運(yùn)行沒(méi)有main的java類
??????通常我們需要在java類中添加main函數(shù)才能在命令行運(yùn)行這個(gè)類,但是有一種(可以讓你暈死的)方法可以讓你在沒(méi)有main的情況下也可以運(yùn)行java class(當(dāng)然不是用applet),代碼如下:
public
?
class
?NoMainMethod

{
????
static
{
????????System.out.println(
"
Hello?word,?no?main?method!
"
);
????????System.exit(
0
);
????}
}
??????static語(yǔ)句塊會(huì)在加載類的時(shí)候加載,它在main函數(shù)之前運(yùn)行。 當(dāng)static語(yǔ)句塊運(yùn)行完畢后,會(huì)尋找main函數(shù),如果沒(méi)有找到,就會(huì)拋出異常。但是在以上的代碼中,static語(yǔ)句塊執(zhí)行后,我們終止程序的運(yùn)行,所以異常就不會(huì)被拋出啦。
跳出JavaBean的命名規(guī)范
??????通常,JavaBean的命名規(guī)范為:屬性名的第二個(gè)字母也不能大寫(xiě)。即不可以出現(xiàn)類似 aAndB 這樣的屬性名。如,Hibernate的PO如果出現(xiàn)這樣的名字,將拋出net.sf.hibernate.PropertyNotFoundException異常。但是有一個(gè)辦法可以解決該問(wèn)題:
java?file:?????
private
?String?aAndB;???

public
?String?getAAndB()?
{????????
????????
return
?aAndB;???
}
???

public
?
void
?setAAndB(String?aAndB)?
{???????
???????? this
.aAndB?
=
?aAndB;???
}
mapping.xml
<
property?
name
="AAndB"
?column
="a_and_b"
/>
??????結(jié)研究發(fā)現(xiàn),上述辦法可以成功的將aAndB這樣的屬性與數(shù)據(jù)庫(kù)mapping起來(lái)。
??????顯然hibernate是通過(guò)setter和getter來(lái)訪問(wèn)對(duì)象的屬性的,所以我們可以說(shuō):mapping.xml并不是在類的屬性和數(shù)據(jù)庫(kù)的字段名之間做映射,而是在setter/getter和數(shù)據(jù)庫(kù)的字段之間做映射。
??????誠(chéng)然,即使可以也別這么干,實(shí)際工作中,還是規(guī)避這種問(wèn)題的好。?
posted on 2006-08-06 00:27
Jcat 閱讀(281)
評(píng)論(0) 編輯 收藏 所屬分類:
Java