- 締切済み
配列変数のlengthプロパティは、どうしてそのまま参照できるのですか?
bnosuke-xの回答
- bnosuke-x
- ベストアンサー率39% (43/110)
配列はちょっと特殊ですが、オブジェクトです。 親クラスはObjectなので、そちらのメソッドも使えます。 文法的に特殊な点もありますが、それはStringクラスも同様ですよね。 さて、配列のサイズ取得が .length への直接アクセスなのは、メソッド呼び出しのオーバーヘッドを回避するためです。 一度作った配列のサイズは変わらないため、length は変更不要です。 length は final 宣言されて変更不可になったメンバ変数と考えてください。このように変更不可にしてあれば直接アクセスしても問題はないです。 完全なカプセル化ではないかも知れませんが、パフォーマンスを取ったということです。 クラス Array は配列を操作するためのメソッドを集めたクラスで、配列そのものではありませんよね? Array.getLength メソッドは、渡された配列の長さを返すメソッドであり、array.length がある以上はあまり必要ないものと思えます。 このメソッドの中身は例外処理を除けば int getLength( Object array ) { return array.length; } となります。
関連するQ&A
- APIリファレンスはどこにありますか
初歩的な質問で申し訳ないのですがjavascriptで提供されている すべてのメソッドの説明がかかれたリファレンスのようなもの(言語仕様書?) はどこからダウンロードすればいいのでしょうか。 javaでいうと下記サイトのようなものはないのでしょうか。 http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/index.html
- ベストアンサー
- JavaScript
- Javaで配列の長さを知るメソッド
Javaの配列の長さを知るメソッドを調べています。 例えば String sTest[][] = new String[2][2]; sTest[0][0] = "something"; だとして、sTest[0][0]の長さ(文字数)の9を出力したいのですが、どのようにすればいいのでしょうか。 APIを調べて、クラスArrayのgetlengthを使って System.out.println(getlength(sTest[0][0])); としてみたら駄目でした。 また、Stringクラスのlengthを使って System.out.println(length(sTest[0][0])); としても駄目でした。 まだAPIにあまりなれていないのですが、書き方が間違っているのでしょうか?
- ベストアンサー
- Java
- Visual C#でのメソッド
Visual C# でプログラミングしようと思ったのですが、メソッドの一覧などはどこでわかるのでしょうか? たとえば、javaでならhttp://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html このようなページを見てやってたのですが、 C#ではこういった情報の入手方法がわからず困っています。 わかるかたがいたら教えてください。
- 締切済み
- その他(プログラミング・開発)
- String(byte[] bytes, int offset, int length)の文字コードは?
String(byte[] bytes, int offset, int length)は、バイト配列(8bitずつのまとまり)を、文字列型に直す、というものだと思うのですが文字コードは何にしたがって直すのでしょうか? http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html
- ベストアンサー
- Java
- 今、SunのサイトのjavaAPIリファレンス見られますか?
たとえば http://java.sun.com/j2ee/sdk_1.3/ja/techdocs/api/index.html とか、 http://java.sun.com/j2se/1.4/ja/docs/ja/api なんですが・・・。
- ベストアンサー
- Java
- API 仕様のダウンロードできませんか?
JavaTM Platform, Standard Edition, v 1.3 API 仕様 (http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html) の一式をダウンロードできるサイトをご存知ありませんか? 圧縮ファイルで22MBぐらいのものらしいのですが・・・
- ベストアンサー
- Java
- APIドキュメントのダウンロードの仕方について
現在JAVAのSDK1.4.1を入手してForteを使って勉強しているのですがAPI仕様の日本語版がほしくてサイトを調べていたら下記のサイトに日本語版がありました。 http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html ここのAPIドキュメントを私のPCへダウンロードしたいのですがどのようにしたらよいのでしょうか?
- ベストアンサー
- Java
- APIのページ
お世話になります。 Javaには「Java 2 Platform Standard Edition 5.0 API 仕様(http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/index.html)」 PHPには「PHPマニュアル(http://jp.php.net/manual/ja/index.php)」というように、公式(?)のようなAPIのページがありますが、 perlにはそのようなオンラインで参照できるページはないのでしょうか。 関数を探す際等に利用できるページを探しているのですが、見つかりません。 ご存知の方がいらっしゃったらどうかお教えいただけないでしょうか。
- ベストアンサー
- Perl
- バウンドプロパティとは?
お世話になります。 java.beans.PropertyChangeEventのAPIを見ると、 PropertyChange イベントは、Bean が「バウンド」プロパティーまたは「制約」プロパティーを変更するたびに送信されます。 というような記述があるのですが、この「「バウンド」プロパティー」とは何のことを指しているのでしょうか? Javaでプロパティといえば、クラスの中に定義される、アクセサメソッド(ゲッター・セッター)を使ってのみアクセスできるprivateな変数メンバのことだと思うのですが、「バウンド」プロパティとはそれのことですか?それとは別の何かですか? よろしくご教授ください。
- ベストアンサー
- Java