もう8時か、
2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50 [PR]萌え猫写真館が復活。[PR]  

JAVAってこんなことも出来ないの?

1 :デフォルトの名無しさん:2007/05/19(土) 22:13:03
mainメソッドから値を返す。


143 :デフォルトの名無しさん:2008/08/25(月) 02:42:32
Javaが遅いのと、メモリ管理が自動なのは関係あるの?

144 :デフォルトの名無しさん:2008/08/25(月) 14:01:44
今では無関係と言って差し支えないと思う。
メモリ管理は下手に手動でやるよりはGCに任せたほうがかえって性能が良くなるって話すらある。

145 :デフォルトの名無しさん:2008/08/27(水) 22:24:57
>>1
   
  ∧∧
 (・ω・ )
 _| ⊃/(__
/ ヽ-(___/
 ̄ ̄ ̄ ̄ ̄ ̄


146 :デフォルトの名無しさん:2008/08/27(水) 22:48:50
>>98にすげー共感する。

Struts覚えようとしたらDIも使うべき、とかおいおい環境作りにどんだけ手間かけさすんだよいつになったら画面作るとこに手つけさせてくれるんだよとウンザリしてRailsに逃げたw

147 :デフォルトの名無しさん:2008/08/27(水) 23:13:38
オマイら、楽しそうだな。

148 :デフォルトの名無しさん:2008/08/30(土) 09:54:09
>>145
   タノシイヨ
  ∧ ∧
  (´・ω)
 _|⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄


149 :デフォルトの名無しさん:2008/09/01(月) 22:05:50
> 98は、NetBeans使ってればよかっただけって話か。
Eclipseが悪いな。

150 :デフォルトの名無しさん:2008/09/02(火) 14:13:26
つーか、EclipseってJava使うのに向いてないだろ。クソつかえねぇ。
そもそもJavaの特徴ってのは使いやすい使いにくいじゃねぇんだから
ごちゃごちゃ文句言うんじゃねぇよ!俺みたいに学生時代に勉強しとくのがベスト。

151 :デフォルトの名無しさん:2008/09/02(火) 16:56:44
>>150
Javaの特徴は重いことだ。

152 :デフォルトの名無しさん:2008/09/03(水) 00:00:40
>>150
ベストの勉強しても全角厨しか生まれないんだな。
さすが、Java (w

153 :デフォルトの名無しさん:2008/09/03(水) 14:23:06
Cではprintf();ですむ作業をわざわざSystem.out.println();って書かなきゃいけないのに驚いた
scanf関数に相当するものがないのにはさらに驚いた

154 :デフォルトの名無しさん:2008/09/03(水) 14:44:45
import static System.out;
することで、out.printlnに減らすことはできるけど、長いね。

scanfの代わりはjava.util.Scannerということだけど、使い方全然違うしね。
正規表現でこんなことはできるけど、面倒だね。びっくりだね。
Matcher m = Pattern.compile("(\\d+)を入力して(.+)に").matcher("500を入力してほげほげに");
m.matches();
System.out.println(m.group(1));
System.out.println(m.group(2));

155 :デフォルトの名無しさん:2008/09/03(水) 14:57:00
Cのscanfは使っちゃだめ系の関数だし、なくてもいいんじゃね

156 :デフォルトの名無しさん:2008/09/03(水) 15:22:30
>>154
ありがとうございます
なんか面倒ですね…

>>155
scanfって使わない方がいいんですか?
学校のプログラミングの授業ではバリバリ使われています;´・ω・`)

157 :デフォルトの名無しさん:2008/09/03(水) 15:39:07
ヒント: セキュリティーホール


オプソなんかではscanf調査ツールがあったり、
つかっちゃいけない関数は、
DONOTUSE_なんたらかんたら、という文字列に#defineされてたような。

158 :デフォルトの名無しさん:2008/09/03(水) 16:57:35
>>156
まあ、System.out.printlnはEclipseならsysoutでctrl+space、NetBeansならsoutでtabとすれば入力できるから、入力がめんどうというのはあんまりあてはまらないね。

159 :デフォルトの名無しさん:2008/09/03(水) 22:20:00
>>156
学生さんならいいと思うよ。

でも、商用プログムだと入力は最も気を使うところ。

>>157 の言うようにセキュリティホールの危険もあるし、
変な入力された時に適切なエラーメッセージを出すことも
容易でないから基本的に使わない。

160 :デフォルトの名無しさん:2008/09/03(水) 22:30:51
最近のJavaはかなりCと同じ関数が増えてるよ

161 :デフォルトの名無しさん:2008/09/03(水) 23:00:33
import java.io.*;

public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("数字を入力してください");
String str = br.readLine();
int num = Integer.parseInt(str);

面倒臭い

162 :デフォルトの名無しさん:2008/09/04(木) 01:24:38
やろうと思えばJavaでできるけど、
そういうのはLLにまかせとけばいいと思うんだ

163 :デフォルトの名無しさん:2008/09/04(木) 07:56:01
いっそ、こっちの方が楽だったりな。クロージャーが導入されてくれれば、もっとスッキリするのに。
あとはsetDefaultCloseOperationがどうにかならないんかな。
ウィンドウ出すマルチプラットフォームアプリ作るときはJavaが楽。

public static void main(String[] a){
JFrame f = new JFrame("数値入力");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout(new GridLayout(2, 1));
f.add(new JLabel("数字を入力してください"));
final JTextField t = new JTextField();
t.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int i = Integer.parseInt(t.getText());
System.out.println(i);
t.setText("");
}
});
f.add(t);
f.pack();
f.setVisible(true);
}

164 :デフォルトの名無しさん:2008/09/04(木) 08:18:06
今はJavaにもprintf()があるんだが・・・・
ポインタがない分どれだけラクだと思ってんだ

165 :デフォルトの名無しさん:2008/09/04(木) 08:45:16
Cみたいな特種用途向けの言語相手に何威張ってるんだ

166 :デフォルトの名無しさん:2008/09/04(木) 11:50:15
printfがないとかいう話にはなってないでしょ。

167 :デフォルトの名無しさん:2008/09/04(木) 14:52:56
既出かもしれんが、自分でクラスライブラリ作っていて、
abstract static a();
みたいな抽象スタティックメソッドが作れなくて困った。
これはJavaの仕様でたまたまそうなのか、抽象スタティックメソッド
というオレ考えが論理的におかしいのかわからん。

168 :デフォルトの名無しさん:2008/09/04(木) 16:05:59
おまえがおかしいに決まってんだろ。javerはバカだね

169 :デフォルトの名無しさん:2008/09/04(木) 21:09:51
そもそも >>167 が何をしたいのからわからん。

170 :デフォルトの名無しさん:2008/09/05(金) 01:09:11
ファクトリメソッドパターン?

171 :デフォルトの名無しさん:2008/09/05(金) 08:38:30
関数ポインタが欲しかったんじゃね?

172 :デフォルトの名無しさん:2008/09/05(金) 10:32:35
>>167
利用法が思いつかない…

173 :デフォルトの名無しさん:2008/09/05(金) 16:10:48
みんな許してやれ

174 :デフォルトの名無しさん:2008/09/05(金) 17:46:47
>>167
マジレスすると、ここはJavaの質問スレではないから
真面目な答えはここじゃ返ってこないぞ。

175 :デフォルトの名無しさん:2008/09/05(金) 23:28:06
おれもクラスライブラリつくっちゃおうかな

176 :デフォルトの名無しさん:2008/09/06(土) 17:43:18
>>174
> 真面目な答えはここじゃ返ってこないぞ。

>>168 は充分真面目な答えだと思うが。

177 :デフォルトの名無しさん:2008/09/06(土) 18:36:20
>>174
167は質問してないね

178 :167:2008/09/08(月) 10:23:08
えー、別に質問したかったわけじゃなくて。
”こんなこともできねーの”という主旨にそって書き込ませてもらいました。
それで、用途はですね。
たとえば、たとえばDB上の様々なテーブルを表す、クラスA,B,C・・・とたくさんあって、DB上での取り扱いを処々定めた抽象クラスを実装しているわけです。
で、クラスA,B,C・・・のテーブルの生成、削除等はstaticメソッドにしたかったのですが、それは抽象クラスからは、abstractな抽象メソッドがないためだめだったというわけです。
もちろん、テーブルの生成、削除をstaticメソッドにしなければいいだけのことなのですが、なんとなくあるクラスというかBeanのテーブルの生成、削除等はstaticメソッドにする方がすっきりしているように思えたわけです。


179 :デフォルトの名無しさん:2008/09/08(月) 12:17:11
まだ理解できないのか。javerはバカだね

180 :デフォルトの名無しさん:2008/09/08(月) 12:20:02
>>178
C++でも出来ないけどねこれ。
寧ろそういうやり方出来る言語ってなんだろう

181 :デフォルトの名無しさん:2008/09/08(月) 12:21:14
デザインパターンを勉強した方がいいよね

182 :デフォルトの名無しさん:2008/09/08(月) 12:24:56
>>178
> で、クラスA,B,C・・・のテーブルの生成、削除等はstaticメソッドにしたかったのですが
ここがそもそもの発端なわけですね

183 :デフォルトの名無しさん:2008/09/08(月) 12:39:15
static にしてもすっきりしないと思う。
どういうのが”すっきり”かも人それぞれだけどなw

184 :167:2008/09/08(月) 15:39:37
abstractクラス.staticメソッドとやれば
それぞれを実装しているサブクラスのstaticメソッドが実行されるって
ことができれば便利だとおもうんだけどなあ・・・

185 :デフォルトの名無しさん:2008/09/08(月) 16:00:59
>>184
それ明示的にクラス名書いて呼ぶの?動的じゃなくて?

186 :デフォルトの名無しさん:2008/09/08(月) 16:10:52
簡単に数値に変換できるかどうか判定したいんですが・・・

187 :デフォルトの名無しさん:2008/09/08(月) 16:15:31
>>186
javaの質問スレって認識したうえでのろうぜきかや
IntegerとかLongとかDoubleとかBigDecimalとかつかってparseできるか試すのがいいんでね?

188 :デフォルトの名無しさん:2008/09/08(月) 16:23:12
abstractクラス.staticメソッド
こんなんでどうやってどのサブクラスのstaticメソッド呼ぶか確定できるんだよ。javerってこんなことも理解できないの?


189 :デフォルトの名無しさん:2008/09/08(月) 16:33:33
>>187
いや、質問ではなくて そういう機能くらいデフォルトであればいいかな?的な 発言
Parseで失敗したらとかやってるとExceptionとかでしか判断できないからスマートではないのかな?
とか思ったりしたんで。

紛らわしくてごめん

190 :167:2008/09/08(月) 16:36:41
>>185
すみません書き方が悪かったす。
オレがイメージしていたのは、
abstractクラスのAで、
abstract static void createTable();
となっていて
Aを実装するクラスBのインスタンスbで
b.createTable()とやれば
クラスBで実装したstaticメソッドcreateTable()が呼ばれるといいなと。
しかしまあ、Bのインスタンスをつかわなければならん時点で、
abstract static voidが可能だとしてもあまりスマートな結果は得られませんね。
皆様失礼しました。



191 :デフォルトの名無しさん:2008/09/08(月) 16:37:36
たぶんこんな使い方をしたいんだろうと予想

abstract class Foo {
public static abstract void method();
}
class Bar extends Foo {
public static void method(){ ... }
}

Class<? extends Foo> absclass = Bar.class;
absclass.method();

192 :デフォルトの名無しさん:2008/09/09(火) 00:14:56
普通に使えそうじゃん

45 KB [ 2ちゃんねる 3億PV/日をささえる レンタルサーバー \877/2TB/100Mbps]

取りに行ったけどなかった。次は一時間後に取りに行くです。
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :


read.cgi ver 05.0.7.8 2008/09/25 アクチョン仮面 ★
FOX ★ DSO(Dynamic Shared Object)