2010年12月8日
#
Java 8之前,同一注解不能在相同的目標元素上多次使用,例如,如下的注解在Java 8之前是不允許的:
public class SampleClass {
@Quality("Security")
@Quality("Performance")
@Quality("Readability")
public void foo(){
//
}
}
Java 8引入了Repeatable注解(@Repeatable)可以解決這一問題,但光有可重復的注解定義還不夠,還需要它的容器注解,兩者一起來實現(xiàn)可重復注解的使用。實例如下:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
@Repeatable (Qualities.class)
public @interface Quality {
String value();
}
@Target(ElementType.METHOD)
public @interface Qualities {
Quality[] value();
}
其中,Quality是可重復注解,由@Repeatable注解標明,它的容器注解是Qualities,用于存放所有可重復的Quality(存貯在Quality[]中);同時還要注意可重復注解和它的容器注解的目標元素必須是一樣的(這也不言自明)。如此這般,我們最開始的
SampleClass 在Java 8環(huán)境下就可以安全使用了。
以下單例實現(xiàn)思想來自《Java Design Patterns: A Programmer's Approach》.
該方法利用了Java缺省的Lazy類實例化機制克服了傳統(tǒng)單例模式實現(xiàn)中Lazy實例化方式的不足。
public class Singleton {
private Singleton(){}
public static Singleton getInstance(){
return Helper.instance;
}
static class Helper {
private static Singleton instance = new Singleton();
}
}
以下轉(zhuǎn)自StackOverflow(
http://stackoverflow.com/questions/5074063/maven-error-failure-to-transfer),親測可用。
This worked for me in Windows as well.
- Locate the {user}/.m2/repository (Using Juno /Win7 here)
- In the Search field in upper right of window, type ".lastupdated". Windows will look through all subfolders for these files in the directory. (I did not look through cache.)
- Remove them by Right-click > Delete (I kept all of the lastupdated.properties).
- Then go back into Eclipse, Right-click on the project and select Maven > Update Project. I selected to "Force Update of Snapshots/Releases". Click Ok and the dependencies finally resolved correctly.
當我們寫Groovy腳本代碼的時候,有時會發(fā)生編譯錯誤,如下:
- Groovy:Invalid duplicate class definition of class XXX : The source XXXX\XXX.groovy contains at least two
definitions of the class XXX.
- The type XXX is already defined
原因在于Groovy會把.groovy代碼文件作為腳本或類定義來處理,例如如下代碼:
class Order {
def security
def value
private buy_sell(su, closure) {
security = su[0]
quantity = su[1]
closure()
}
def getTo() {
this
}
}
def methodMissing(String name, args) {
order.metaClass.getMetaProperty(name).setProperty(order, args)
}
def getNewOrder() {
order = new Order()
}
Integer.metaClass.getShares = { -> delegate }
Groovy會把上述代碼作為腳本處理,同時缺省用文件名來作為一個外圍類類包括整個腳本程序,此時,如果該文件名恰好也是Order的話,那么就會出現(xiàn)重復的類定義錯誤提示。
解決辦法是將腳本文件名取另外一個不同的名字。
已經(jīng)申請OCUP中級考試的學員可以在一年內(nèi)(截止到17年9月份)免費申請OCUP2中級考試的資格(原有考試仍可以參加)。此外,2014年3月份之后參加了原有OCUP中級認證考試的學員可以免費申請OCUP2中級認證考試。詳見OMG網(wǎng)站聲明(http://www.omg.org/ocup-2/exam-info.htm)。
搬家總是難免的,但舊家的東西不能帶走難免會留下些許遺憾,希望它們能永遠留下來.......
歡迎光臨我的新家:
http://blog.sciencenet.cn/?53016 (科學網(wǎng))
轉(zhuǎn)自網(wǎng)絡(luò)。
3歲,他去上幼兒園了,看著他小小的堅強的背影,心中又喜悅又有點小小的心酸。離別了一整天,孩子看到你高興得奔跑過來,撲在你的懷里。跟你說:媽媽,我想你了。那一刻,抱著孩子就像抱著了整個世界。
6歲,他上小學了,孩子終于走進校門,這是多么值得紀念的事情,孩子的人生從此翻開了新的篇章,卻沒想到,這也是孩子離開我們的第一步。他已經(jīng)對與你分開一天習以為常了,而且他喜歡每天去學校,這是他更喜歡的生活。甚至,他有時還會說:媽媽,在家好無聊,沒有小朋友和我玩。
12歲,他上初中了,甚至有的開始上寄宿學校,一個月或者幾個月回一次家,見上一次面。他們開始不再依賴你,甚至,他們喜歡和你對著干。你想幫他們做點事情,他們說:媽媽,我自己來吧。突然覺得這句話讓我們覺得好失落,孩子是不是不再需要我們了?
18歲,他離開你去上大學,一年回來兩次。回來的好幾天前,家里的冰箱就裝不下了,為他準備了各種各樣他喜歡吃的東西。可是一回來打個照面,他就忙著和同學朋友聚會去了。從此,你最怕聽到的一句話是:媽媽,我不回家吃飯了,你們自己吃吧。
大學畢業(yè)后,孩子留在了遠方工作,一年也難的回來一次了。好不容易回來一趟,幾天就走了。你最盼望的就是孩子的電話,希望,孩子對你說一聲:媽媽,我很好,你保重身體。這樣就足夠了。
孩子結(jié)婚了,回家的時間有一半勻給了你的親家,孩子回來的更少了。你已經(jīng)習慣就老兩口在家了,但是,你最希望聽到孩子對你說:媽媽,今年過年我回家過啊!
當孩子又有了他們自己的孩子,你已經(jīng)不再是他們的家庭成員了,他們的一家三口(或一家n口)里,已經(jīng)不包括你們了。
而我們也慢慢的習慣了這樣的日子。只是習慣在閑來無事的時候,經(jīng)常翻翻相冊,看看我們自己的一家三口,無論孩子身在何方,他卻永遠是我們家庭中無可取代的一員。
是啊,其實當孩子在身邊的日子,我們是多么幸福。可是有時我們卻還會抱怨。抱怨因為他,你做了太多的犧牲。抱怨他晚上老醒來,讓你睡不好,抱怨他無理取鬧,抱怨他愛撒嬌長不大,抱怨他生病,讓你操碎了心,抱怨為了培養(yǎng)他,花費了太多的精力與金錢...可是,如果你想想,10多年后,就算你想要,也沒有機會了。孩子會不停的長大,過了這個時期他就再沒有這個時期的習性。你是不是常常在他斷奶后懷念喂他吃奶的日子,可是那時你卻覺得好累好辛苦好厭倦。是不是常常看他以前吃手的照片覺得好可愛,可是你曾經(jīng)卻為要不停的給他洗手而煩惱透了。是不是在他褪去童聲后,特別想念他曾經(jīng)奶聲奶氣的聲音,可是他以前撒嬌的時候你卻很不受用。是不是當孩子去上學后你特別懷念他黏在你身邊的日子,可是以前你卻總在想他要什么時候才能去上學啊。。。
時間無法倒流,過去了就只能永遠過去了。孩子能呆在身邊的日子是多么難得與寶貴。因為這一點,我更加的珍惜與孩子相處的每一刻,也讓我無論遇到什么,都心存感恩。謝謝上天給我這么一個孩子,讓我分享與見證他成長的每一刻。無論帶給我多少困難,煩惱,甚至挫敗,無論讓我失去多少睡眠,時間,金錢,精力,我仍然豁達,因為,這都是上天的恩賜。
當他在身邊的每一天,我都會讓他覺得幸福,也是讓我們都有一個美好的回憶。我不會給他太多壓力,束縛,更不會給他牽絆,阻擾,但是我會適時管教,也會做量力而行的投資,因為我有責任與義務(wù)教會他生活的本領(lǐng),好讓他來日自由快樂的飛翔。同時,我也會告訴他,就算所有的路都行不通時,還有一條路你可以暢行,那就是回家的路。。。。。。。。
今日編輯一PDF文件(用的是Adobe Acrobat Pressional 7.0),刪除了幾頁,然后保存,結(jié)果文件大小反而增加了;而刪除幾頁后另存,則文件大小減少。
你也試試看。