Questions tagged [java]

Javaは、オブジェクト指向プログラミング言語の1つ。Javaで開発されたアプリケーションはJava仮想マシンの中で動作するため、アプリケーション自体はプラットフォームに依存せず動作することが出来る。その汎用性は、PC・携帯電話・スマートフォン・サーバマシン・Webブラウザなど多岐にわたる。

1573 questions
16
votes
2 answers

どうしてfinalizeを使うべきではないのですか?

「Javaのfinalizeによるクリーンアップ処理の実装は行うべきではない」と教わったのですが、なぜそうなのでしょう? また、finalizeを使わずに同じようなことをすることはできるのでしょうか?
niu
  • 2,000
  • 6
  • 34
  • 44
12
votes
1 answer

Javaは何言語で書かれていますか?

英語で検索したのですが、翻訳がうまく働かずはっきりとした回答を得ることができませんでした スタックオーバーフローだったのでここで質問すれば解決しますか
ぅーぅー
  • 147
  • 1
  • 3
10
votes
2 answers

Javaで利用可能なメモリサイズのデフォルト値は?

Javaでは-Xms256mのように利用可能なメモリを指定できますが、指定しない場合のデフォルトサイズ はどのようになりますでしょうか?
Tsuneo Yoshioka
  • 373
  • 1
  • 5
  • 9
9
votes
2 answers

コンストラクタの this() super()はなぜ先頭にしか記述出来ないか

なぜthis() super()は先頭に以外に記述することをなぜ禁止したのでしょうか? this()やsuper()を呼び出す前に何かをしないといけない時は面倒じゃないですか。 なぜなのでしょうか。 public class Instance{ String name; public Instance(){ //ここに処理があるとエラーが出る this("Sample"); } public Instance(String name){ //処理… …
ra1ned
  • 1,130
  • 3
  • 16
  • 49
9
votes
1 answer

Javaで独自実装したListの動作が異常に遅い

ListIteratorでaddメソッドを実装しArrayListやLinkedListと速度比較したのですが、独自実装のListIteratorの動作が異常に遅いのです。その理由がわかりません。 ListIteratorをimplementしたMyListItrを作成し、最初にaddを実装しその速度を比較しました。 MyListに格納するオブジェクトはElm型オブジェクトとします。 public class Elm { public Elm next; …
nakashima
  • 93
  • 5
8
votes
3 answers

継承したクラスのメンバ変数を差し替えたい

Java で以下のようなことを簡潔に記述可能でしょうか。 稚拙な質問ですが、慣習等あればご回答いただけたらと思います。 よろしくお願いいたします。 class A { B b; A() { this.b = new B(); } // 以下、b を使ったメソッドなど } class B {} class A' extends A { // b を使ったメソッドの動作はそのままに b を B' のインスタンスとしたい } class B' extends B…
sira
  • 367
  • 1
  • 3
  • 12
7
votes
1 answer

String型を==で比較したときの挙動がfinal/非finalで違う

String型を==で比較したときの挙動が予想と違う の回答では(3)の形が登場しています。 普段、私はIDEの自動補完で変数に final を付与しているので、たとえ(3)の形で記述しても最終的に上記(2)の形になります(正確には変数final_ne_and_final_koもfinalにもなりますが)。 final の有無で結果が変わる、というのが意外だったのですが、これはどの仕様に拠るものでしょうか。 (IDEの final…
7
votes
1 answer

スーパークラスと同じコンストラクタが使えないのはなぜ?

Java初心者です。 import java.util.*; class ListTest{ MyClass m1 = new MyClass("hoge"); MyClass m2 = new MyClass("fuga"); List list1 = new ArrayList<>(Arrays.asList(m1, m2)); //OK ArrayList list2 = new…
j.TAKEO
  • 73
  • 1
  • 3
7
votes
3 answers

Java 互換性チェック

Java 8 を用いた実行可能jarを配布したいのですが、ユーザーのJavaが7以前であるときに、Java 8のダウンロードを促すメッセージを出したいのですが、このjarファイルを介してそのようなことは可能でしょうか? 別にソフトウエアを用意する必要があるのでしょうか?
kensuke1984
  • 305
  • 1
  • 5
6
votes
1 answer

【Java】Threadの割り込みについて

java.lang.Threadで、別スレッドでタイマーを起動して、 メインスレッドが停止するか、タイマースレッドが規定時間を過ぎたタイミングでプロセスを終了したいのですが、 仕様を見ると、”休止中のスレッドに対する割り込み”(interrupt)しか見当たらないので、常時走っているメインスレッドへの割り込みは、不可能ということになるんでしょうか? イメージとしては、実行クラスで try { final Thread main = Thread.currentThread(); …
omarun
  • 1,483
  • 6
  • 27
  • 42
6
votes
4 answers

Class型と文字列から対応するenum値を取得するには?

public enum MyEnum { HOGE, FUGA; } 下記のClassとStringからMyEnum.HOGEを取得するにはどうすれば良いでしょうか? またClass型(cl)からenum値すべて列挙可能でしょうか? class cl = MyEnum.class; String value = "HOGE";
hiro
  • 1,074
  • 2
  • 10
  • 19
6
votes
2 answers

javaで変数の計算をすると「精度が失われる可能性があるintからshortへの変換」が出る

javaで変数計算をしていると下のようなエラーが出ました エラーメッセージ 精度が失われる可能性があるintからshortへの変換 short c =a+b ファイルの内容 byte a = 64; short b = 100; short c =a+b どこで変数がintになったのですか?
55 Rihito
  • 97
  • 1
  • 4
6
votes
2 answers

説明文中にクラスとメソッドとの区切れを「#」で示すときの「#」の由来

次の①のWebページでは、クラスとメソッドとの区切れをString.substring()のように「.」で表しています。 次の②のWebページでは、クラスとメソッドとの区切れをjava.lang.String#substringのように「#」で表しています。 ①のように「.」で表すのは、ソースと同様にということだと思います。 ②のように、ソース以外の文章の中で、クラスとメソッドとの区切れを「#」で表す由来は、何でしょうか。 ①…
mnkrar
  • 329
  • 1
  • 4
  • 12
6
votes
1 answer

インタフェースの実装はis-a関係ですか?

インタフェースとその実装クラスはis-a関係でしょうか?
user23690
  • 273
  • 6
  • 14
  • 29
6
votes
1 answer

総称型の変数に対して、extendsで限定してもインスタンスを代入できない

Javaの総称型について教えてください。 以下のようなコードを書きましたが、コンパイルエラーとなりました。 class Hoge {} class Test { Test() { // error: incompatible types: Hoge cannot be converted to T T hoge = new Hoge(); …
andou
  • 689
  • 1
  • 4
  • 14
1
2 3
27 28