タグ

2011年2月17日のブックマーク (13件)

  • プログラマーs研究所/研究日誌 Javaクラスファイルの中身

    1999/03/30 JAVAのクラスファイルの中身(最終回) お待たせしました。最終回です。 型の表記について JavaVMが内部では型をどのように管理しているか、という話です。 型といっても、booleanやint、Stringなどだけではなく、配列やクラスなどの 複合型もあるので大変です。関数の引数や戻り値もそうです。 JavaVMでは、型を簡略化した文字列であらわしています。例えば、 main の型は "([Ljava/lang/String;)V" とあらわします。 これは、戻り値がvoidで、引数がJava.lang.Stringを1つということを意味します。 雰囲気はつかめると思いますが、詳しく説明する前に少し横道にそれます。 まず、色んな言語の型の書き方について思い出してください。 C/C++ BOOLfoo(int id, CString name) intlis

  • プログラマー's研究所/研究日誌

    2004/08/11 [Java]Deepなコピー O先輩からの質問で作ったプログラムです。 最初はDeepなコピーを clone() で実装しようと考えていたけど、内部構造が深かったり複雑だと大変です。 しかし、以下のようにすれば、いちいちclone()を作らなくても、Serializableさえ 実装していればどんなクラスでもコピーできます。 便利です。 仕組みは簡単。 オブジェクトをメモリ上にシリアライズし、バイトの配列の状態にします。 そのバイト配列から、オブジェクトとしてシリアライズして取り出します。 入出力ストリームを使っていますが、ファイルではなくメモリなので高速です。 import java.io.*; public class DeepCopy { /** * deepなコピーを行なう. * @param o コピー元のオブジェクト. * @return コピーさ

  • Javaバイトコードメモ(Hishidama's Java ByteCode Memo)

    Javaのソースをコンパイルするとclassファイルが作られるが、その中身はバイトコードと呼ばれる中間形式。 JavaVMがそのバイトコードを解釈して実行する。 classファイルの中身には色々な情報が入っているが、当ページではその中のプログラムに関する部分をメモしている。 逆アセンブル方法 バイトコード(インストラクションコード?)はいわばアセンブリ言語のようなもので、javapやjadを使うとclassファイルから簡単に逆アセンブルすることが出来る。 javapはJDKをインストールすれば使えるし、jadはJDK1.5以降には対応してないっぽいので、素直にjavapを使うのがいいんだろうなー。 C:\sample\classes> javap -c jp/hishidama/sample/Sample C:\sample\classes> javap -c jp.hishidama.s

  • Java 仮想マシン

    ここまで説明してきたクラスファイルが実行時にどのように扱われるか?メモリ上にどのように展開されるか?これらの疑問に答えるためには、まずJava仮想マシン(JVM)の構造を理解する必要があります。 まず、図2.2にJVMの全体の構造を示します。ここに登場する様々なコンポーネントは、一部分はJVMの仕様書で定義されていますが、他の部分は名前だけ、場合によっては名前も載せられていません。この図では、JVM仕様書と現在の実装から、主要なコンポーネントと思われるものを、まとめておきました。では、それぞれのコンポーネントについて、紹介していきましょう。 図2.2 JVM の構造 (1) メモリ領域の構造と役割 JVMを構成するコンポーネントの中でも、特に重要な部分がメモリ領域です。この領域には、その名前が示す通り、JVMが実行中に使用する様々なメモリがまとめられています。図2.3に示すように、その

  • Hotspot VMの基本構造を理解する

    J2EEがミッションクリティカルな分野に適用されるようになり、Javaのパフォーマンスチューニングの重要性はさらに高まっています。パフォーマンスチューニングにはさまざまなパラメータがありますが、中でもJava VMに関連するチューニングの効果は大きいといわれています。稿は、Java VMに関連するチューニング手法を学ぶための前提知識を提供することを目的にしています(編集部)。 Java VMに関連するチューニングを行い、J2EEアプリケーションのパフォーマンスを上げるためには、Java VMについて詳しく知る必要があります。稿は2回に渡ってJava VMの基構造と動作原理を詳細に解説しますが、内容を理解するためにはプログラムがコンピュータ上で動作する基原理とJava VMの基用語を知っている必要があります。Java VMの基用語に関しては、「実行スピードに挑戦するJavaアーキ

    Hotspot VMの基本構造を理解する
  • VM Spec The Structure of the Java Virtual Machine

    Java Language and Virtual Machine Specifications Java SE 22 Released March 2024 as JSR 397 The Java Language Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicitly Declared Classes and Instance main Methods Preview feature: Statements Before super(...) Preview feature: String Templates The Java Virtual Machine Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicit

  • nextindex.jp

  • http://m.plixi.com/p/77977710

    relax_more
    relax_more 2011/02/17
    カーリルのエラーメッセージがかわいい。おっとっと。てw
  • VM Spec The Structure of the Java Virtual Machine

    Java Language and Virtual Machine Specifications Java SE 22 Released March 2024 as JSR 397 The Java Language Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicitly Declared Classes and Instance main Methods Preview feature: Statements Before super(...) Preview feature: String Templates The Java Virtual Machine Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicit

  • VM Spec The Structure of the Java Virtual Machine

    Java Language and Virtual Machine Specifications Java SE 22 Released March 2024 as JSR 397 The Java Language Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicitly Declared Classes and Instance main Methods Preview feature: Statements Before super(...) Preview feature: String Templates The Java Virtual Machine Specification, Java SE 22 Edition HTML | PDF Preview feature: Implicit

  • 1発合格★Java認定試験!(SJC-P/310-035/310-055)

    Java認定資格(SJC-P/310-035)を一発合格したい! このサイトは、そんなあなたを気で応援します!! SJC-P(310-035)対策のメルマガ問題集も好評発刊中。 ぜひあなたの受験に役立ててください。 メールマガジンの購読はもちろん無料です! 登録はこちらから→SJC-P対策メルマガ問題集

  • 「炊き上がりなう」 アンドロイド搭載炊飯器が登場

    英家電メーカーのマイソン社は、携帯端末向け基ソフト(OS)「アンドロイド」を搭載した次世代炊飯器「ネクサス・ジェイ」を今春にも発売すると発表した。「ツイッターで炊き上がりをつぶやく」、「1つの内釜でおかゆと雑炊を同時に炊き上げる」など、従来の炊飯器にはない高度な機能を多数備える。 16日、ドイツで開催された家電の見市「コンシューマー・エレクトロニクス・ショー(CES)」で発表された、「スマートジャー」と呼ばれる次世代炊飯器「ネクサス・ジェイ」は、ネット検索大手グーグルが開発するOS「アンドロイド3.1(開発コード名『Happyturn』)」を世界で初めて採用。インターネットと常時接続することで、今までの炊飯器では実現できなかったさまざまな機能を備えた。 炊飯器としての機能として最も注目されるのは「炊き分け」機能だ。演算装置を2つ備えるデュアルコアCPUを採用することにより、1つの内釜で

    「炊き上がりなう」 アンドロイド搭載炊飯器が登場
    relax_more
    relax_more 2011/02/17
    炊き上がりなうとかw 「炊き上がりなう」 アンドロイド搭載炊飯器が登場
  • 近頃話題の Titanium Mobile でラクラク iOS アプリ開発してみた

    最近 FF11 が楽しくて仕方がないもりやまです。 日頃から FINAL FANTASY XI Wiki や eLeMeN – FF11 等を参考にしているのですが、そんな中に FF11用語辞典 ~ ウィンダスの仲間たち版があります。 移動中に iPhone で眺めることが時々あるのですが、PC 用のビューそのままなので拡大しないと読めなくて使いにくいなぁと思っていました。 そこで、最近各所で話題の Titanium Mobile を使って、iPhone で読みやすくするためのアプリを作ってみることにしました。 Titanium Mobile とは、JavaScript を使って iOS / Android のネイティブアプリを開発するためのミドルウェアです。BlackBerry にも対応予定のようです。 titanium-mobile-doc-jaプロジェクトにとてもよくできた日語ドキ

    近頃話題の Titanium Mobile でラクラク iOS アプリ開発してみた