SSブログ

Cool Tools [Java]

nice!(0) 

TuxGuitar [Java]

http://www.tuxguitar.com.ar/

FedoraはyumでインストールOK
nice!(0) 

DGuitar [Java]

sourceforge.net

DGuitar is a Guitar Pro (*.GP4,*.GP3,GTP) viewer and player that works under Linux, MacOs, Solaris, BSD, Windows, or any other operating system with Java Runtime 1.4.X. http://DGuitar.sourceforge.net
nice!(0) 

@Test アノテーション 互換性のない型エラー [Java]

javac -cp /usr/share/java/junit4.jar::. -Xlint DateColumnTest.java
DateColumnTest.java:14: 互換性のない型
検出値 : Test
期待値 : java.lang.annotation.Annotation
@Test
^

気がつけば、Test.class がそこにあり、名前が衝突していた。

nice!(0) 

junit makefile [Java]

#junit4 test
JU_TARGET=Person
TESTER_CLASS=$(JU_TARGET)Tester
#JUNIT_CP= -cp /usr/share/java/junit.jar:$(PACKAGEPATH):.
JUNIT_CP= -cp /usr/share/java/junit4.jar:$(PACKAGEPATH):.
$(TESTER_CLASS).class: $(TESTER_CLASS).java $(JU_TARGET).class
javac $(JUNIT_CP) $(JAVACOPT) $<
ju: $(TESTER_CLASS).class $(JU_TARGET).class
java $(JUNIT_CP) junit.textui.TestRunner $(TESTER_CLASS)

nice!(0) 

jconsole [Java]

jconsole が動かない。

LANG=C jconsole

で起動した。

.bashrc にalias 登録



nice!(0) 

Flyweightパターン [Java]

@Test
public void pool() {
String author = "Henry David Thoreau";
String authorCopy = "Henry David Thoreau";
assertTrue(author.equals(authorCopy));
assertTrue(author == authorCopy);

StringBuilder builder = new StringBuilder("Henry");
builder.append(" David Thoreau");
assertTrue(author.equals(builder.toString()));
// this assertion fails!
assertTrue(author == builder.toString());
}

1. 2つのStringオブジェクトの内容は同じ
2. 2つのオブジェクトは意味的に等価
3. equals()を呼び出すことによって2つのオブジェクトの等価性を確認
4. == は authorとauthorCopyの参照(アドレス)を比較しています。
5. 2つのオブジェクトはメモリ内でも同じ場所に格納されている!


2 つのStringオブジェクトは別々に生成されているが、
Javaは密かにこれらのオブジェクトを同じ場所に格納して、メモリ空間を節約

コンパイル時にリテラルはリテラルプールに存在抽出可能


nice!(0) 

FindBugs [Java]

http://findbugs.sourceforge.net/

sourceforge
jnlp

codezine

findbugs -textui -sourcepath . $(TARGET).jar
nice!(0)