Java

Graphics

Graphicsクラスは、画像処理に関するさまざまな情報や処理を持つ抽象基底クラス。Graphics (Java Platform SE 6)これまでも、drawLineなどのメソッドを使っていたが、Graphicsオブジェクトgの内部のインスタンスはどうなっているか確認してみる。今回もアプ…

Applet

Javaアプレットは、Webブラウザ上で実行できるJavaプログラムである。 Appletクラスを継承して作る。Applet (Java Platform SE 6)Eclipseの場合だと、普通にJavaプロジェクトを作成し、MainAppletクラスを追加。Appletクラスを継承し、paintをオーバーライド…

Container.paint

画面の描画処理は、paintメソッドで行う。 これは、Frameクラスの親のWindowクラスの親のContainerクラスのメソッドである。Container (Java Platform SE 6) GUIアプリケーション(AWT その2) AWTとSwingのペイント(paint)の仕組みFrameを継承したクラスMain…

Window.addWindowListener

以前、WindowListenerの回で、ウィンドウの閉じるなどのイベント処理は、WindowListenerオブジェクトをaddWindowListenerでFrameオブジェクトに追加することで実現できた。Window (Java Platform SE 6)FrameはWindowの派生クラスであり、addWindowListenerは…

IDN.toUnicode

Punycodeから日本語に戻すには、IDN.toUnicodeを使う。IDN (Java Platform SE 6)で、こうすると、 日本語.jpという形で元に戻る。Sample/java/IDN/toUnicode/src/IDN at master · bg1bgst333/Sample · GitHub

IDN.toASCII

AndroidのWebViewで日本語ドメインを渡すときはどうしたらいいのか調べていたら、日本語ドメインについて - QiitaURLエンコードではなく、Punycodeというものを使うらしいということがわかった。 IDN.toASCIIでPunycodeに変換する。 Java標準にもあったので…

URLDecoder.decode

URLDecoderはURLデコードをするためのクラス。URLDecoder (Java Platform SE 8)URLデコードするには、URLDecoder.decodeを使う。URLDecoder (Java Platform SE 8)前回のURLエンコード済みテキストを使って、URLデコードすると、 あいうえおと出て、元に戻っ…

URLEncoder.encode

URLEncoderはURLエンコードをするためのクラス。URLEncoder (Java Platform SE 8)encodeメソッドでURLエンコードに変換する。URLEncoder (Java Platform SE 8)UTF-8文字コードでURLエンコードをしてみる。で実行すると、 %E3%81%82%E3%81%84%E3%81%86%E3%81%…

HttpURLConnection

HttpURLConnectionは、HTTP通信を行うためのクラス。 Androidでも以前やったが、もともとはJava標準用意されているもの。HttpURLConnection (Java Platform SE 8)GETで"http://bgstation0.com"にアクセスして、レスポンスを得る。取得したレスポンスを出力す…

URL

URLは、文字通りURLを扱うクラス。URL (Java Platform SE 8)文字列でURLを渡して、ホスト名だけを得るみたいなことをしてみる。こうすると、 bgstation0.comだけ出力される。Sample/java/URL/URL/src/URL at master · bg1bgst333/Sample · GitHub

BufferedReader

BufferedReaderは、文字をバッファリングすることで、文字列として読めるようにする。BufferedReader (Java Platform SE 8)InputStreamReaderをBufferedReaderに渡すことで、行ごとに文字列として読み込める。で、test.txtが、 あいうえお かきくけこ さしす…

InputStreamReader

InputStreamReaderは、バイトストリームから文字ストリームへ変換していく。InputStreamReader (Java Platform SE 8)渡されたバイトストリームを指定の文字コードからUnicodeにデコードした文字ストリームにして返す。 test.txtには、 あいうえおってShift_J…

TextField

TextFieldは、編集可能なテキストコンポーネント。TextField (Java Platform SE 8)Buttonを押したら、Labelのテキストが、TextFieldに入力されているテキストに変わるようにしてみる。で、labelは"label"となっているlabelは"label"となっているが、buttonを…

Label

Labelはテキストの表示専用コンポーネント。Label (Java Platform SE 8)Buttonを押したら、Labelのテキストが変わるようにしてみる。このようにしてみると、ここでbuttonを押すここでbuttonを押すと、"label"が"button Clicked!"に"label"が"button Clicked!…

Date

Dateは日時を扱うクラス。Date (Java Platform SE 8)現在日時を取得してみる。 MainClass.javaで、Dateオブジェクトdateを生成して、System.out.printlnにそのまま渡すと、日時が出力される。 Sun Jun 3 20:48:16 JST 2018このように出力される。Sample/java…

Math.abs

絶対値を計算するには、Mathクラスのabsメソッドを使う。Math (Java Platform SE 8)MainClass.javaで、10と-10の絶対値を求めて出力する。 10 10絶対値はどちらも10。Sample/java/Math/abs/src/Math at master · bg1bgst333/Sample · GitHub

ArrayList

ArrayListは、挿入や削除が可能な配列型のコレクションクラス。ArrayList (Java 2 プラットフォーム SE v1.4.0) ArrayList (Java Platform SE 8)ジェネリクスが無い時代は、Objectで出し入れしていたため、各型にキャストすることが必要だったが、ジェネリク…

Integer

Integerは、整数型intのラッパークラス。 ラッパークラスってよくわからないけど、Integer (Java Platform SE 8) 【Java入門】Integerなどのラッパークラスの使い方(変換/比較/null) | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイトインス…

String

Stringは文字列を扱うクラス。String (Java Platform SE 8)MainClass.javaで、Stringオブジェクトstr1は初期化も代入も無いので、このままだとコンパイルエラーというかコンパイルできない。 なのでnullを入れておく。 str2は文字列代入のような初期化。(""…

ActionListener

ActionListenerは、ボタンやタイマーなどのイベントを受け取るインタフェース・・・。ActionListener (Java Platform SE 6)これでボタンが押された時に、ボタンに表示されているラベル名を"button"から"Clicked!"に変える・・・。button.addActionListenerに…

Button

ボタンを配置するにはButtonクラスを使う・・・。Button (Java Platform SE 6)これをフレームに配置していく・・・。ただし、FrameクラスのデフォルトレイアウトはBorderLayoutというもので、このままでは任意の位置とサイズでボタンを配置できない・・・。 …

WindowAdapter

WindowListenerインタフェースを実装したクラスは、WindowListenerに定義されているメソッドをすべて定義しないといけない・・・。 しかし、ウィンドウを閉じる処理だけなら、windowClosingとwindowClosedだけオーバーライドしておけば十分・・・。WindowAda…

WindowListener

WindowListenerは、ウィンドウに関するイベントを受け取るインタフェース・・・。WindowListener (Java Platform SE 6)Frameの項ではウィンドウを閉じることができなかったが、これの派生クラスを作ってFrameオブジェクトに登録することで、閉じてアプリケー…

匿名クラス

メソッド内で一時的に定義されたクラスの中でも、クラス名を持たないものを匿名クラスという・・・。このようなBaseClassを定義しておく・・・。BaseClassオブジェクトインスタンスbaseからmethodBaseClassを呼べば、"methodBaseClass"が出力されるだろう・…

ローカルクラス

クラスのメンバメソッド内で定義された一時的なクラスをローカルクラスという・・・。OuterClassのメンバフィールドouterInt、メンバメソッドmethodOuterClassを用意・・・。methodOuterClass内でローカルフィールドlocalIntと、ローカルクラスLocalClassを…

静的内部クラス

内部クラスにstaticを付けると、外部クラスのインスタンスから内部クラスにはアクセスできないが、外部クラスからスタティックメンバとして内部クラスにアクセスできる・・・。こうすると、OuterClassのインスタンス生成は要らなくなるので、OuterClass.Stat…

メンバ内部クラス

クラス内で定義できるクラスを内部クラスという・・・。 内部クラスはいろいろなカタチのものが定義できるが、今回はクラスのメンバとして定義できる内部クラスを扱う・・・。OuterClassには、メンバとしてmethodOuterClass、callInnerClassMethodの2つのメ…

Frame

Frameは、JavaのGUIコンポーネントAWTにあるウィンドウクラス・・・。Frame (Java Platform SE 6)これでウィンドウを表示してみる・・・。MainClass.javaを追加・・・。Frameを使うには、java.awt.Frameをインポートする必要がある・・・。mainメソッドでFra…

FileWriter

FileWriterは、ファイルへの文字出力ストリームクラス・・・。FileWriter (Java Platform SE 6)Writerクラスの派生で、writeで出力、コンストラクタにFileオブジェクトを指定できる・・・。FileWriterオブジェクトwriterだけ用意・・・。Fileのexistメソッド…

FileReader

FileReaderは、ファイルからの文字入力ストリームクラス・・・。FileReader (Java Platform SE 6)Readerクラスの派生クラスで、親クラス同様readメソッドで文字列を読み込める・・・。 FileReaderもFileオブジェクトを受け取ることができる・・・。charの配…