タグ

Javaに関するgfxのブックマーク (182)

  • javadoc-The Java API Documentation Generator

  • Java の語彙で Maybe を説明してみる - ぐるぐる~

    java-jaで例外処理の話をしてきました - 西尾泰和のはてなダイアリー を読んで。 Maybe は値があるかないかを型で表すことができます!そう、直和型なんです!とか言われてもイミフだと思うのです(リンク先のエントリがそう説明してるわけではないですが)。 Java の語彙で Maybe の説明をできたら嬉しい人もいるんじゃないかなぁ、とかなんとか。 ただし、書いてたら結構長くなりました。時間がある人はどうぞ。 Maybe? null より安全に「値がないこと」が扱えるものだよ スタート地点としてはこれでいいでしょう。 以降で、「なんで安全なの?」という全うな疑問に答えてみたいと思います。 問題点 int で説明すると煙に巻いてしまうような気がしたので、User クラスを見てみます。 import java.util.*; class User { final String name;

    Java の語彙で Maybe を説明してみる - ぐるぐる~
    gfx
    gfx 2012/06/28
    わっふるわっふる
  • Java共変戻り値メモ(Hishidama's Java covariant return type Memo)

    共変戻り値型(covariant return type) 共変ってあんまり聞かない言葉だけど。 メソッドをオーバーライドした際、戻り値の型が(JDK1.4までは一致している必要があったが、JDK1.5から)サブクラスに出来るようになった。 ちなみに、共変の反対は「反変(contravariant)」と言うらしい…が、それはJavaとは無関係^^; 具体例(インターフェース) interface Interface { public Number getValue(); } class Implement implements Interface { public Integer getValue() { //戻り値の型にサブクラスを指定 return 123; //自動ボクシング } } この例では、インターフェースでは戻り値をNumberで宣言しているが、その実装ではNumberのサブ

    gfx
    gfx 2012/06/17
  • グーグルは特許を侵害していないとの判定--オラクルとのJava関連訴訟にて (CNET Japan) - Yahoo!ニュース

    サンフランシスコ発--陪審員らは米国時間5月23日、GoogleOracleの特許2件を侵害していないという判断を全員一致で下した。 カリフォルニア州北部地区米連邦地方裁判所の判決において、同裁判の陪審員らは、Googleは米国特許番号RE38104における6件のクレームと米国特許番号6061520における2件のクレームを侵害していないと判断した。 これで特許侵害の訴えに関する同裁判の第2フェーズが終了した。同裁判の最終弁論は先週行われていた。この評決を受け、損害について論じる第3フェーズは実施が取り消された。 判決後、カリフォルニア州北部地区米連邦地方裁判所のWilliam Alsup判事は陪審員らを解散。同判事によれば今回の裁判は自身が手掛けた中で最も長い民事裁判だったという。また、同訴訟の一環でこれに関連する著作権問題についても今後判決を下す予定だと述べた。同裁判における著作

  • JD-GUIというデコンパイラを使ってみた

    cles::blog 平常心是道 blogs: cles::blog NP_cles() « 創作中華 田園 :: Comodo の不正証明書で定例外の Windows Update » 2011/03/25 JD-GUIというデコンパイラを使ってみた  java 29 5へぇ 立つ鳥跡を濁さずということで、今日は一日中、中途半端になったプログラムと格闘していました。未完成のプログラムは完成させてしまえば済むわけですが、一番の問題は昨年の春にSSDが壊れたときに、リポジトリにコミットしていなかった研究用のJavaツールのプロジェクトが根こそぎぶっ飛んでしまったのをどうするかということでした。さすがにこれは書き直すには時間がありません。 幸いにも.classファイルは他のマシンに転送してあるものが見つかったので、あとはデコンパイラでソースを復元してしまうことにしました。 JD-GUI | J

    JD-GUIというデコンパイラを使ってみた
  • blog.katsuma.tv

    [09/04/07 16:00 追記] embedでの呼び出し結果の表に誤りがあったので訂正しました。 世間ではiPhone OS3.0で騒がれていますが、そんな中メインストリームとは逆行してJava Appletについていろいろ調べていました。 情報が少なすぎる 世間的にはJava Appletの話なんて枯れすぎてる話題なので、いくら調べても2000年過ぎの情報ばかりが大半です。「ただしこの方法ではNetscape4.0以上の環境では。。。」とか言われても困るわけです。今どきのWebアプリケーションらしくJavaScriptと連携させるにはどうすればいいんでしょうか。そもそもappletのロード方法1つとってもSafariやChromeなんかのモダンブラウザに対応したロード方法とかまったくわかりません。あとJava Runtimeのインストールチェックなんてどうすればいいのでしょうか??

  • 今年のJavaは要注目トピックがいっぱい! JavaOne Tokyo 2012 2日目 “テクニカルキーノート” | gihyo.jp

    今年のJavaは要注目トピックがいっぱい! JavaOne Tokyo 2012 2日目 “テクニカルキーノート” 4月5日、7年ぶりのJavaOne 2日目です。初日のJava Strategy Keynoteに続いて、今朝は“⁠Java Technical Keynote⁠”と題した基調講演が行われました。場所は前日同様 六木アカデミーヒルズ49です。 昨日に続いてMCはJavaOne Tokyo 2012実行プロジェクトリーダーの伊藤敬氏。残りの時間を目いっぱい楽しんでほしいと挨拶。 コーディングの簡略化が進むJava 7~Java 8 テクニカルキーノートは、初日のキーノートの内容を承け、より技術的に掘り下げたものです。伊藤氏の紹介を受け最初に登壇したのは、Java Language & VMのSpecification Leadを務めるAlex Buckley氏。同氏はおもに言

    今年のJavaは要注目トピックがいっぱい! JavaOne Tokyo 2012 2日目 “テクニカルキーノート” | gihyo.jp
    gfx
    gfx 2012/04/06
  • Discovering Class Members (The Java™ Tutorials > The Reflection API > Classes)

  • Javaリフレクションメモ(Hishidama's Java Reflection Memo)

    Javaでは、クラス生成やメソッド呼び出しをソース上に直接書いてコンパイル時に決定されるだけでなく、文字列(クラス名)を使ってクラスを生成したり、 メソッド名の文字列を使ってメソッドを呼び出したりすることが出来る。 クラス(インスタンス)生成 [/2015-04-26] Classのメソッド [/2021-03-21] instanceof [2007-02-16] Classからのインスタンス生成(非推奨) [/2018-04-30] インスタンス生成 [/2013-08-06] 総称型による限定 [2007-05-02] 内部クラスのインスタンス生成 [/2008-02-10] メソッド呼び出し staticメソッド実行 [/2017-07-23] メソッド実行(引数なし) [/2017-07-23] メソッド実行(引数あり) [/2017-07-23] 可変引数メソッド [/2015

  • fchiba's memo [Android]複数API Levelへの対応

    Androidで上位APIが使えるなら使い、使えないなら別な方法で対応する、というコードをどうやって書けばいいか検討してみた。 例えば、画像の拡大縮小を ・Ver2.0(API Level 5)以上でマルチタッチ対応なら、ピンチで行う。 ・上記以外の場合は、ZoomControlのみで行う。 としたいとする。 Eclipseのプロジェクト作成時、API Levelは1つしか選べない(チェックボックスなのに)。 なので、上位のAPIを使いたい場合は、そのLevelに合わせる必要がある。 ただし、下位の端末でも該当するAPIを使っていなければそのアプリケーションは実行可能である。 (http://developer.android.com/intl/ja/guide/appendix/api-levels.html によると、"If the application were to be som

  • Java SE 7徹底理解 第9回 コアライブラリの変更点 その1

    Java SE 7はJSRになるような大きな変更は少ないのですが、細かい変更は非常に多く、しかも多岐にわたっています。そんな細かい変更のうち、今回はjava.langパッケージおよびjava.utilパッケージの変更点について紹介していきます。 なお、java.langパッケージに含まれるクラスローダは比較的大きな変更が施されました。そこで、クラスローダに関しては別の機会に紹介し、今回は省略させていただきました。 java.langパッケージ プリミティブ型の比較 Booleanクラス、Byteクラス、Characterクラス、Integerクラス、Longクラス、Shortクラスに、比較のためのstaticなcompareメソッドが追加されました。 staticではないcompreToメソッドが引数が一つなのに対し、staticなcompareクラスは引数を二つ取り、引数同士を比較します

    Java SE 7徹底理解 第9回 コアライブラリの変更点 その1
    gfx
    gfx 2012/02/06
  • クラウドでのJavaの存在感は高まるか?

    今年の春まで、主要なクラウドでJavaをサポートしているのは、Goolge App Engineのみでした。クラウドで構築するアプリケーションのサーバサイドのプログラミング言語としてRubyをはじめとしたオープンソース系の言語が注目を集めていたこともあり、「クラウド時代にJavaはフェードアウトしていくのではないか」とさえ思える状況でした。 しかしこの半年で状況は大きく変わりました。Amazonクラウドをはじめ、VMware、Red Hat、そしてオラクルもJava対応のクラウドを発表しています。今月行われたJavaOneではクラウドに向けた進化も発表され、Javaはクラウド時代にも、その存在感を示すことになりそうです。 クラウドでのJavaについて、これまでの経緯をまとめました。 この半年で立ち上がったクラウドのJava環境 この半年で、Java対応のクラウドが次々に発表されました。 4

    クラウドでのJavaの存在感は高まるか?
    gfx
    gfx 2012/01/15
  • http://www.shudo.net/java-grandprix99/strictfp/

  • Java SE 7 の言語拡張 - #9 Backyard

    Java SE 7 で導入された新しい言語拡張について簡単にまとめておきます。言語レベルの話ですので、ライブラリレベルの変更点はもっとたくさんありますが。 バイナリリテラル int や long 値を表記する際に 0b11011 のような 2 進数表記の数値リテラルが可能になりました。バイナリ入出力でビットフラグやマスク、ビットパターンを記述する場合に便利ですね。 int x = 0b1010; System.out.println(x); // 10 Binary Literals 数値リテラルのアンダースコア 数値リテラルの任意の位置にアンダースコア '_' を入れられるようになりました。これは 0x7FFF_FFFF のように可読性目的で使用するものです。とはいえ桁数の大きなリテラルを確認するケースに遭遇するのも年に何回かというところでしょうか。 long x = 9_223_372

    Java SE 7 の言語拡張 - #9 Backyard
    gfx
    gfx 2012/01/04
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    gfx
    gfx 2011/11/29
  • JavaはクラウドやHTML5、iOS/Androidも取り込む? (1/3) - @IT

    JavaはクラウドやHTML5、 iOS/Androidも取り込む? JavaOne 2011まとめレポート Twitter Inc. 山裕介 2011/10/14 JavaOne 2011まとめレポート 1996年から続いている伝統のJava開発者向けイベント、「JavaOne Conference 2011」が10月2~6日の4日間サンフランシスコで開催されました。オラクルによるサン・マイクロシステムズ(以下、サン)の買収騒動から一息着いた今回は「Moving Java Forward」を標榜し、Javaエコシステムが今度も進化し続けることを強調する発表が続々となされました。 稿では、カンファレンス期間中になされた重要な発表をプラットフォーム別にまとめてお伝えします。 Java SE - 7リリース、8は2013年、9はどうなる Java EE - 6の普及とマルチクラウドへの歩み

    gfx
    gfx 2011/10/14
  • Javaのhello worldの読み方 | mwSoft

    前書き お馴染み、hello worldのソース。 class Hello { public static void main(String[] args) { System.out.println("hello world"); } } このコードはコンパイルされると、こんなバイトコードになります。 ca fe ba be 00 00 00 32 00 22 07 00 02 01 00 05 48 65 6c 6c 6f 07 00 04 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 01 00 06 3c 69 6e 69 74 3e 01 00 03 28 29 56 01 00 04 43 6f 64 65 0a 00 03 00 09 0c 00 05 00 06 01 00 0f 4c 69 6e 65 4e

  • 学校では教えてくれない System.out.println() - 郡山からHello World

    実際に学校で教えてくれるかは別として System.out.println()について考えてみよう。System.out.println()は、Javaを勉強しようとする人が初期の段階から利用するメソッドである。が、しかし、実は謎だらけなのである。 まずは、System.out.println()を分解して考えてみる。 Systemjava.lang.Systemである。 outはjava.lang.Systemのフィールドである。 Systemクラスのjavadocを眺めると、outの型はPrintStreamであることがわかる。 PrintStreamのjavadocを眺めると、printlnメソッドが存在する。 つまり、System.outにPrintStreamのオブジェクトが代入されていて、そのオブジェクトのprintlnメソッドを呼んでいるだけでる。このメソッドを実行すること

    学校では教えてくれない System.out.println() - 郡山からHello World
    gfx
    gfx 2011/08/19
  • AndroidアプリケーションをJUnitでテストする | Android開発メモ

    作成したアプリケーションは、どのように動作確認していますか? Androidには、Javaの単体テストのフレームワークである「JUnit」を使用することができます。今回は、その使用方法について説明します。 <1>アプリケーションの仕様を決める まず、作成するアプリケーションの仕様を決定しないといけませんが、今回は下のようなAndroidアプリケーションを作成します。 画面の一番上にEditTextを貼り付ける。 EditTextの下に、TextViewを貼り付ける。 EditText、TextViewの初期値は空文字。 TextViewの下には「コピー」という文字が入ったボタンを貼り付ける。 「コピー」ボタンは、EditTextに文字が入力されていない場合は、ボタンを押下することはできない(無効になっている)。 「コピー」ボタンを押下すると、EditTextの内容がTextViewにコピー

  • JavaがC++に圧勝するコード例 - LLVMとコンパイラとVM

    Author:nothingcosmos(坂頂佑樹) IT系、特にVMに関して 周辺技術の紹介等をしています。 コメント・質問はお気軽にどうぞ。 LLVM wiki twitter:nothingcosmos