Archive for 12 月, 2008

2008年も残りわずか

水曜日, 12 月 31st, 2008

ということで(^^;

適当にカウントダウンタイマーを作ってみました。

本当に手抜きの適当なものです。

本当はターゲットタイムを設定できるようにして、

流行のきざしをみせている JavaFX で作ってみたかった。

でも、全然知識ないからそれはまた今度ってことで・・・(^^;

1 

Launch  かうんとだうんたいまぁぁぁ

Java  Web Start にしてみました。

SplashScreen が使えるようなので使ってみました。

詳しく調べてない(日本語の情報をみつけられない><)ので表示時間の調整方法が解りません(T-T)

私の環境では短かったり長かったりと不安定な状態となってます。

とりあえず、手抜きついでに時間の更新に次のようなものを使ってみました。

別に普通のスレッドでもいいんですけど使ったことがなかったからという理由です。

        int procs = ManagementFactory.getOperatingSystemMXBean().getAvailableProcessors();
       ScheduledExecutorService ses = Executors.newScheduledThreadPool(procs);
       ses.scheduleAtFixedRate(new task(), 0, 1, TimeUnit.SECONDS);
これでも問題なさそうですね。
と、ここまでは手抜きソフトなので順調だったのですが
つぼにはまりました。
私は NetBeans6.5 を使ってます。
この NetBeans6.5 のインストール時に 64bitJDK がデフォルトでは選択されてましたのでそのままインストールしました。
これまでに Nimbus を永続化設定すると起動しない。(32bit は問題なし)ということに遭遇しました。
これは Windows Vista 64bit にて。
今回は Java Web Start をプロジェクトで設定するとエラーが出て動きません。
64bitJDK で NetBeans が中途半端に動いてます。
本来 64bitJDK がサポートされているかは調べてないのでなんともいえませんが 32bitJDK で NetBeans を動かしたのが幸せになれますね。
私は 32bitJDK で動かすように設定ファイルを書き換えました。
これでつまらないトラブルにあうことはなくなるでしょう。
さて、今年最後につぼにはまったけど解決できたので良しとしましょう。(^^)
今年を振り返ってみると4年ぶりにパソコンを更新!
ノートパソコンも更新!
驚くべきは私がお気に入りの NetBeans 6.5 日本語版が世界同時リリース!
本当に驚きました。
翻訳ご苦労様でした。 感謝感激です。
私にとっては2008年は良い年でした。(あと残り時間何もなければ)
それでは、いいお年をお迎えください(^^)
Hatena タグ: ,,

WordPress2.7 にアップグレードしました。

日曜日, 12 月 28th, 2008

最近MTからWPにブログソフトを苦労して変更したばかりなのに2.7へアップグレードをしろと管理コンソールにログインするたびに勧められる。

失敗すると面倒だと思いずっと躊躇してたけど駄目もとでアップグレードしてみました。

おかしなところをお気づきでしたらお知らせくだされば幸いです。

無事に動いているか心配です。(^^;

JConsole プラグイン その後

木曜日, 12 月 25th, 2008

自力で解決できそうにないので NetBeans ML に投稿しました。

NetBeans でご活躍中の片貝さんが教えてくれました。

ありがとうございました(^^)

プロジェクトプロパティウィンドウの設定が格納されるところは

<ユーザーディレクトリ>/config/Preferences/org/netbeans/modules/projectuiapi.properties

そのファイルにある

CustomizerPane.dialog.height=2000
CustomizerPane.dialog.width=2000

を削除すれば OK です。

こんなバグもあるんですね(^^;

Hatena タグ:

OpenSolaris の罠 2

木曜日, 12 月 25th, 2008

OpenSolaris 2008.05 がリリースされてインストールした時に root でログインできないように変更されているのに気がついた。

これは OpenSolaris 2008.11 でも同じだ。

root でログインしようとすると怒られる。

1

そこで root でログインできるように変更してみました。

2

元の root でログインできない状態に戻すには

3

これで root でログインできない状態に戻りました。

ここまではいいのですが・・・

罠はこの先に待ってました。

シャットダウンさせようとした時に

あれっ?

4

シャットダウンの項目がなくなってる!

復活方法が解りましぇ~ん(T-T)

なんてこった orz

コマンドでシャットダウンさせられるから大きな問題ではないと気をとりなおして

5

あらら・・ 日本語って文字化けするんですね。(^^;

試しに英語?で

6

大丈夫のようですね。

しかし、初めにあったものが無くなるのは気分的に良くないですねぇ・・・

どうすれば復活できるのだろうか?

Hatena タグ:

NetBeans6.5 で JConsole プラグインはドッキリか?

水曜日, 12 月 24th, 2008

JConsole プラグインをいれてみた。

プロジェクトのプロパティに [ Monitoring Management ] とういう項目が増える。

それをクリックすると

あ~ら 不思議!!

設定画面がおもいっきり大きくなるではありませんか!

これってドッキリですか?

しかも、元のきちんとレイアウトされたサイズに戻らない(><)

この驚くべきドッキリが発生する環境は

Windows Vista 64bit    JDK1.6u11 64bit

Windows XP   JDK1.6u11

他の環境では確認してないのでわかりません。

Hatena タグ:

NetBeans のUML

月曜日, 12 月 22nd, 2008

この前の型比較演算子のプログラムを視覚的に解りやすくするために NetBeans の UML 作成支援機能をつかってみます。

まぁ、使うほどのものじゃないけどお遊びということで(^^;

クラス図を書けば解りやすいですよね。

ということで、

Java プロジェクト(Instance)を右クリックで [ ReverseEngineer... ] をクリック

1

設定画面がポップアップされるので必要事項を記入

とりあえずデフォルトのまま [ 了解 ] をクリック

2

すると UML プロジェクトが作成されます。

3

クラス図を作成するために UML プロジェクト(Instance-Model)を右クリック

[ 新規 ] → [ Diagram... ] をクリック

4

Class Diagram を選択し、必要であれば Diagram Name を変更します。

5

完了をクリックすると Class Diagram が Model の中にできてます。

これをダブルクリックするとクラス図のデザイナ画面が表示されます。

6

Model の中にあるクラスやインターフェイスをデザイナ画面にドラッグアンドドロップします。

すると下図のように自動で継承関係やインターフェイスの実装が構築されます。

適当に配置したので綺麗にレイアウトを自動でやり直すのは下図の右上の数珠のような絵のアイコンをクリックします。

7

警告メッセージが出ます。

Yes ボタンを押します。

8

綺麗にレイアウトされました。

9

このようにクラス図でみるとこの前の型比較演算子のデモプログラムも理解しやすですね。

しかし、便利ですね。

NetBeans にこんなに便利なものがあるけど日本では人気がないのかなぁ・・・

以前、エンタープライズパックで提供されていたときは日本語だった時もあったのに今は英語・・・(T-T)

面白い機能なので暇があれば UML の勉強がてらいろいろ試してみたいですね。

ちなみに私はこれらに詳しくないので操作や名称が違うかもしれませんのであしからず・・・

ってゆうか、勝手にしました。(^^;

Hatena タグ:

型比較演算子

日曜日, 12 月 21st, 2008

型比較演算子のデモプログラムです。

こういったのを見ると Java を始めた頃に難しいなぁと思ったことを思い出します。

Java は型に厳しい言語ですからね。

以下のプログラムは Sun の Java チュートリアルにあるものを少し変更したものです。

このプログラムの実行結果は Java を勉強した人なら解りますよね。

私は永遠の初心者なのでこのようなプログラムをみると今でも少しドキッっとします。

public class Instance {

    public static void main(String[] args) {

        Parent obj1 = new Parent();
        Parent obj2 = new Child();

        System.out.println("obj1 instanceof Parent: " +
                (obj1 instanceof Parent));
        System.out.println("obj1 instanceof Child: " +
                (obj1 instanceof Child));
        System.out.println("obj1 instanceof MyInterface: " +
                (obj1 instanceof MyInterface));
        System.out.println("obj2 instanceof Parent: " +
                (obj2 instanceof Parent));
        System.out.println("obj2 instanceof Child: " +
                (obj2 instanceof Child));
        System.out.println("obj2 instanceof MyInterface: " +
                (obj2 instanceof MyInterface));

        System.out.println("obj1 が null の場合は?");

        obj1 = null;

        System.out.println("obj1 instanceof Parent: " +
                (obj1 instanceof Parent));
        System.out.println("obj1 instanceof Child: " +
                (obj1 instanceof Child));
        System.out.println("obj1 instanceof MyInterface: " +
                (obj1 instanceof MyInterface));
    }

}

class Parent{}
class Child extends Parent implements MyInterface{}
interface MyInterface{}

プログラムの実行結果が気になる人はコードをコピペしてコンパイルして実行してみてね。
Hatena タグ:

値の交換

金曜日, 12 月 19th, 2008

とりあえず息抜きに

値の交換をする時に一般的には交換の為の一時的な値の格納用に変数を一つ使って行います。

変数 temp を使って a と b の値を交換する

temp = a;

a = b;

b = a;

これが一般的で直感的にも理解しやすいですね。

しかし、余分な変数なんて使いたくないというひねくれもの人は次の方法を使う。

b ^= a;

a ^= b;

b ^= a;

排他的論理和の性質を利用する。

これってぱっと見はなんだ?と思うよね。

使い慣れている人とか熟練プログラマなら全然OKなんでしょうね。

他にも余分な変数を使わない方法があります。

しかし、私の好みのものは上記の二つですね。

あとは本当にひねくれてるやり方だと思うので省略(^^;

この他に素晴らしい交換方法があれば説明とともに教えていただきたいです。

Hatena タグ:

確認完了

土曜日, 12 月 6th, 2008

OpenSolaris 2008.11 RC1 にインストールした NetBeans6.5 のメニューバーのフォントがギザギザになる問題は

netbeans.conf ファイルに

-J-Dawt.useSystemAAFontSettings=on と起動オプションを追記することによってアンチエイリアスが効いた

なめらかなフォントになることを確認しました。

image

これって NetBeans 側で設定オプションがあってもよさそうな気がしないでもない。

弱弱しいフォントの答え

金曜日, 12 月 5th, 2008

OpenSolaris2008.11 RC1 にインストールした NetBeans 6.5 のメニューバーのフォントの問題ですけど

ML か Blog で見たような記憶があったので 「NetBeans アンチエイリアス」でググってみたらあった。

netbeans.conf ファイルに起動オプションを設定すれば回避できるらしい。

-J-Dawt.useSystemAAFontSettings=on

たぶんこれを追加すれば OK のはず。

今晩も夜勤なので確認はまた後日。

おやすみなさいzzz