タグ

Javaに関するarerreeeのブックマーク (40)

  • C# と Java の例外に対する考え方の違い - とある社員のチラシ裏

    http://msdn.microsoft.com/en-us/vcsharp/aa336812.aspx を勝手に翻訳 なぜ、C#では例外定義を持たないのか いくつかの言語では、例外定義をメンバの宣言に含めることができたり、要求されます。 例えば、ある言語の作りでは、メソッドが発生させる ArgumentException は次のように宣言されます。 void DoSomething(int a) throws ArgumentException {...} C# はそのような例外定義はできないし、要求もされません。 いくつかの理由で例外定義を削除しました。その理由は バージョニング 生産性とコードの品質 クラス作成者に「チェックされた例外」と「未チェックの例外」違いを強いることの非現実性 インタフェースに対して、正しく例外を規定することの困難さ バージョニング C#が例外定義を要求した

    C# と Java の例外に対する考え方の違い - とある社員のチラシ裏
  • Efficient data transfer through zero copy

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Efficient data transfer through zero copy
  • Effective Java 読書会 13 日目 「Java の例外めんどくさい」 - IT戦記

    IOException の catch に何を書いていいか分かりません><! はじめに 順番が前後しますが、今回は Java の特徴のひとつである例外機構についてです。 今回の範囲 223 ページ 〜 250 ページ 前回はこちら Effective Java 読書会 12 日目 「スレッド・セーフってなによ!!」 - IT戦記 Java の例外 throw 可能なオブジェクト Throwable インタフェースを実装したもの Exception を継承しない Throwable は基的に使わない チェック例外 メソッドの実装者が「呼び出し元が回復可能」だと考えている例外 ちゃんと「なぜ、例外だったのか」理由が提供されるべき 呼び出し元は try catch で囲むか throws 宣言を書く必要がある Exception を継承していて RuntimeException を継承していな

  • ジェネリクスの基礎と�クラス設計への応用

    Spring Bootのオートコンフィグレーションの恩恵によって、開発者はコンフィグレーションの煩わしさから解放され、Springを容易に動かすことができるようになりました。その反面、ブラックボックスになってハマってしまうことも少なくありません。セッションでは、Spring Bootのオートコンフィグレーションの仕組み・デバッグ方法・カスタマイズ方法を説明します。セッションを聞いてオートコンフィグレーションを便利に使っていきましょう。 (Spring Fest 2021での発表資料)

    ジェネリクスの基礎と�クラス設計への応用
  • Javaアプリケーションサーバ 構築・運用の勘所

    Javaアプリケーションサーバの歴史はそれなりに長いですが、残念ながら運用時のトラブルは後を絶ちません。 トラブルを起こしにくい・起きても解決しやすくするにはどうすべきか、これだけは押さえておきたい構築・運用時のポイントを紹介します。Read less

    Javaアプリケーションサーバ 構築・運用の勘所
  • じっくり学ぶ Java講座 [初心者向け・入門] | みるくあいらんどっ!

    「じっくり学ぶ Java講座」は、初心者向けの Java入門講座サイトです。多くのサンプルコードを目にすることでじっくり着実に Javaプログラミングの基を勉強します。 更新履歴 第01章: はじめに はじめに ウェブサイトの目標とターゲット 学習の心構え おすすめ書籍 おおまかな構成 第02章: Java概論と開発環境の構築 Javaとは 開発環境の構築 開発環境メモ 第03章: はじめての Javaプログラム ハローワールド 読みやすいソースコードを書こう 第04章: 基型と基型変数、演算子とキャスト、Math.randomメソッドと自作ライブラリ 基型と基型変数 演算子と基型のキャスト Math.randomメソッドと自作ライブラリ 第05章: 条件分岐 if文 switch文 第06章: 繰り返し for文 while文 do while文 gotoは使えない 第07

    じっくり学ぶ Java講座 [初心者向け・入門] | みるくあいらんどっ!
  • 今日から始めるJava8 - Taste of Tech Topics

    こんにちは id:cero-t です。 「なんとやらは風邪をひかない」と言われているところ 先日、インフルエンザに掛かってしまいまして。 重ね着+多段布団+電気毛布2枚のコンボで一気に悪寒を吹き飛ばし、 一日で熱を下げたものの、感染予防のために出社を控えたために時間でき、 ちょっとJava8などと戯れていました。 そう、今日はJava8の話題です。 今年の秋に正式リリースが予定されているJavaSE8ですが、 OpenJDKのサイトでは、既にEarly Access版を入手することができます。 JDK8 : http://openjdk.java.net/projects/jdk8/ ダウンロード : http://jdk8.java.net/download.html 1/31に、マイルストーン6がリリースされ Feature Complete となりました。 名前からすると 全機能開発

    今日から始めるJava8 - Taste of Tech Topics
  • 謎なMacのJavaインストール構成 - AOEの日記

    先日、ようやくMac版JDK7のGA版が登場しました。今までMacのJDKはAppleが提供していましたが、7からはOracleからの提供となります。 早速インストールしたのですが、実に奇妙な現象が見られたのでここに記録しておきます。 インストールはOracleのダウンロードサイトからダウンロードしたインストーラを使ってインストールします。特に難しいことはなく、指示に従ってインストールするだけです。 インストール後、JDK7をデフォルトのJDKにするには設定変更が必要です。ここで説明されているのですが、/Applications/Utilities/Java Preferences.app を起動し、以下のスクリーンショットのように [Java SE7] をドラッグして一番上に持って行きます。 これでJDK7がデフォルトで有効になるはず、なのですが自分の環境ではそうなりませんでした...。

    謎なMacのJavaインストール構成 - AOEの日記
  • JavaScript時代のJava #kansumiB7 #kansumi

    株式会社LOUPE エンジニアチームの勉強会「LOUPE Study」の発表資料です。 第一回目の担当は僕。 テーマは「SinatraでのWeb開発について」でした。

    JavaScript時代のJava #kansumiB7 #kansumi
  • Java言語で固定要素のListを初期化する際のイディオム - 達人プログラマーを目指して

    Generics(総称型)のプログラミングはJava言語(バージョン5以降)で最も習得が困難な文法*1の一つです。私自身、時々どうやって文法エラーを修正すべきか悩むこともあるくらいで、実際かなり複雑です。Genericsの導入は賛否両論なので、実際Javaに導入したのは間違いだったという議論もある一方で、静的な型安全性を重視するプログラマーもいます。 好き嫌いはともかくとして、Javaプログラマーとしては、一度きちんとGenericsの正しい使い方(=使い勝手のよい総称型やメソッドの正しい定義方法)について勉強しておいてもよいと思います。 Java Generics and Collections: Speed Up the Java Development Process 作者: Maurice Naftalin,Philip Wadler出版社/メーカー: O'Reilly Media

    Java言語で固定要素のListを初期化する際のイディオム - 達人プログラマーを目指して
  • マルチコア時代のプログラマは関数脳になろう〜Java8のススメ〜 - Tech-Sketch

    CPUのクロックアップに限界が訪れ、マルチコア化することで処理性能向上を目指す時代になりました。これからのプログラマには、マルチコアで処理性能が向上するプログラム=マルチスレッドで並列処理が可能なプログラムを書く能力が必要になります。今回は「関数型」でプログラムを書くことによって、いとも簡単に並列化ができることを実例を元に解説します。 関数型プログラミングと並列処理 「関数型でプログラムを書くことで簡単に並列化できる」と書きましたが、そもそもここで言う「関数」とは何なのでしょうか? 関数型プログラミングの特徴 関数型プログラミングの「関数」を理解するためには、数学における「関数」を想像するとわかりやすいでしょう。 例えば三角関数を用いた y=cos(x) という式を考えてみます。この式に入力値 x=0 を与えた場合、いつでも必ず結果は y=1 になります。x= π/3 の場合は y =

  • プログラミング言語II 目次

    2017年度版作成作業中 (2018/02/05水野)プログラミング言語II 情報生体システム工学科2年生対象 担当 水野和生: [index | Syllabus  | 掲示] [javaSE8 | javaSE8 API  (JavaFXAPI Oracleのサイト)] 目的: 計算機はムーアの法則(1年半程から2年で機能は2倍になる)に従って急速に高速化、大容量化し続けています。このハードウエアの可能性を旨く引き出せば 人間社会を豊かにする力となります。これに対応してプログラミング言語は機械語から始まってより複雑で大規模なソフトウエアを可能にする為、Cの様な構造 化言語、さらにオブジェクト指向言語が開発されてきました。 この講義ではオブジェクト指向言語java用いてオブジェクト指向プログラミングを学び、オブジェクト指向に基づくソフトウエア開発ができるようになることを目指します。 達

  • Javaの例外処理で知らないと損する7つのテクニック

    Javaの例外処理で知らないと損する7つのテクニック:【改訂版】Eclipseではじめるプログラミング(24)(1/3 ページ) これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipseとJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります(この回と前回のみ、別連載「EclipseでJavaに強くなる」の改訂版です。今回は第4回Javaの例外のテクニックを知る」の改訂版です) 前回の「プログラマの宿命! 例外とエラー処理を理解する」では、Javaにおける例外の用途と基的なコードの書き方、例外が発生するさまざまなケースについて理解しました。 今回は、独自に例外を定義する方法や、ちょっとした例外のテクニックを紹介します。 【1】Eclipseで独自の

    Javaの例外処理で知らないと損する7つのテクニック
  • SAXReader (dom4j 1.6.1 API)

    org.dom4j.io Class SAXReader java.lang.Object org.dom4j.io.SAXReader public class SAXReaderextends Object SAXReader creates a DOM4J tree from SAX parsing events. The actual SAX parser that is used by this class is configurable so you can use your favourite SAX parser if you wish. DOM4J comes configured with its own SAX parser so you do not need to worry about configuring the SAX parser. To explici

  • マキノ式.org

    ・クラスとはいったい? プリミティブ型とオブジェクト型の参照方法の違い ・インスタンスの生成 コンストラクタの説明 ・簡単なプログラムの作成( Stringオブジェクトの生成など ) コンストラクタを通してStringを利用してもらう。

  • Java8でDuckTyping的なこと - yojikのlog

    Javaのラムダ式のついでに導入されたメソッド参照がなかなか便利な感じです。メソッド参照をつかってDuckTyping的なことができます。 HasName という関数型インタフェースを受け入れるGreeterクラスの定義*1 public class Greeter { /** 関数型インタフェースの定義 */ @FunctionalInterface interface HasName { String getName();} /** 「名前を持っているオブジェクトに挨拶をしてもらう」メソッド */ public void greet(HasName... targets) { for(HasName it : targets) { System.out.println(it.getName()); }; } } 「HasNameの関数型インタフェースと同じシグネチャを持つメソッド」を持

    Java8でDuckTyping的なこと - yojikのlog
  • JavaSE 7でメソッド名に使えなくなった文字 | 株式会社エイチ・オー・エス

    パッケージJava製品開発担当の大です。こんにちは。 朝晩はだいぶ肌寒くなって、秋らしい空気になってきましたね。 前回も書いたとおり、現在HOSでは製品のJavaSE 7での動作検証を進めています。JavaSE 7で早く使いたい方、申し訳ありませんがいましばらくお待ちください。 さて、検証している上でちょっと困ったことが出てきました。従来動いていたテストコードの一部が、JavaSE 7ではコンパイルもできなくなってしまったのです。これはJavaSE 7の不具合か?と思い、調査してみました。 日語のテストメソッド名 製品のクラス名やメソッド名では使いませんが、開発時のユニットテストのメソッド名やクラス名は、最近は、基的に日語で書くようになりました。これまで日語メソッド名で特に問題が起こっていなかったことと、テストのレポートの出力がアルファベットのキャメルケースに比べ圧倒的に見やすいか

    JavaSE 7でメソッド名に使えなくなった文字 | 株式会社エイチ・オー・エス
  • GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き) - 主に言語とシステム開発に関して

    GoFデザインパターンの一覧表と,活用のためのコメント,および入門者が独学するためのリンク集(サンプルコード付き)。 入門者の独学を支援するために,このページのURLを提示して熟読させ,各パターンを短時間で効率よく学んでもらう。 デザインパターンはプログラマの常識だ。 Java使いかどうかは問わない。 にも関わらず,入門書を買ったまま,途中で挫折する人が多い。 挫折の原因は,パターンの数が23もあって,多いからだろう。 全パターンをすんなり覚えてもらうためには,各パターンごとに 「要するにこういう目的のパターンなんだ。」 「10文字で表現すると,パターンの意味はこうなんだ。」 という要点・質を,短いコメントで伝えれば助けになるだろう。 こういった学習を通して,Java言語の「設計思想」も併せて感じ取ってゆけるはず。 全パターンの一覧表(要約コメント付き) 全パターンについて,10文字以内

    GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き) - 主に言語とシステム開発に関して
  • Javaを使うなら必ず覚えておきたいデータ構造 - 配列・リスト・マップ - いろいろ解析日記

    Javaを使う場合に必ず必要になるデータ構造 - 配列・リスト・マップの使い方について簡単に説明します。 目次 配列 配列を生成する。 配列にデータを格納する。 配列からデータを取得する。 配列中のすべてのデータに同じ処理をする。 リスト (注) リストを使うにはimport文が必要 リストを生成する。 リストにデータを追加する。 リストからデータを取得する。 リストのデータを置き換える。 リスト中のすべてのデータに同じ処理をする。 マップ (注) マップを使うにはimport文が必要 マップを生成する。 マップにデータを格納する。 マップからデータを取得する。 マップ中の全てのデータに同じ処理をする。 関連記事 配列 配列は複数件のデータを扱うためのデータ構造です。 Javaの配列の特徴は、生成時にサイズ(格納するデータの個数)を決める必要があることです。いったん配列を生成すると、後から

    Javaを使うなら必ず覚えておきたいデータ構造 - 配列・リスト・マップ - いろいろ解析日記
  • Mountain Lionで~/.MacOSX/environment.plistがきかない - Yamkazu's Blog

    http://d.hatena.ne.jp/y_sumida/20120805/1344134360 をみてて~/.MacOSX/environment.plistでグローバルに設定できたよなと思いつつ、ローカルの環境を確認してみるとうまく動いていない... Mountain Lion以前までは以下の方法で回避していたのですが https://blogs.oracle.com/katakai/entry/netbeans_and_java_for_mac2 どうもMountain Lionからは~/.MacOSX/environment.plistを広なくなった模様(前からサポート停止されてた?)。いろいろぐぐってみると/etc/launchd.confに書けとのこと。 デフォルトではファイルすら存在しないので、ファイルを作ってOS再起動。 setenv JAVA_HOME /Librar

    Mountain Lionで~/.MacOSX/environment.plistがきかない - Yamkazu's Blog