Java入門・初心者質問スレ Part.4 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>126
書いてある?あ、透明部分に黒で書いてあるの?スマホで見てて背景黒になって表示されてわからなかった。 ググったら少しはまともなのあるやん
ttps://furien.jp/columns/197/ こんにちは
EclipseでMac用のプログラムを改造途中です
ttps://code.google.com/archive/p/tokyo-jogging/
WIDCOMM6.5.1.4800をインストールしたのですが、デバッグウィンドウによるとwinsockで接続しようとしているようです。
ログ中に BlueCove version 2.1.1-SNAPSHOT on winsock と表示される
wiiremoteJ.jar(ver1.6b)
bluecove2.1.1-snaposhot.jar
Win764bitでバランスWiiボードを接続
USBドングル(BroardcomBCM20702)を使用
Q1..ハードウェアドライバはこれで正しいでしょうか?
インテルUSB3.0ルートハブ
+Broadcom BCM20702 Bluetooth4.0
+Microsoft Bluetooth Enumerator ←これがブロードコムにならない
+BluetoothHIDデバイス ←これもMSのドライバ
+HID準拠ゲームデバイス(WiiMote)
+BluetoothHIDデバイス
+HID準拠ゲームデバイス(バランスWiiボード)
+Bluetooth Remote Control
+Bluetoothオーディオ
MS StackがwiiremoteJで必要なL2CAPプロトコルをサポートしていないので、HIDまで行けない気がします
Q2.BluecoveでWIDCOMMを使用するためには
import com.intel.bluetooth.BlueCoveImpl;
System.setProperty("bluecove.jsr82.psm_minimum_off", "true");
BlueCoveImpl.setConfigProperty("bluecove.stack", "widcomm");
でよろしいでしょうか? ここはJava”言語”しか知らない馬鹿しかいないからそんなこと聞いても無駄 スレチですよねー
でもBTスレはハード板でもオーオタですし、他には
Java質問スレ
ttp://mevius.2ch.net/test/read.cgi/tech/1492780397/
ですかねー
Jettyも聞きたいことがあるんですが・・・ マジレスすると2chじゃ突っ込んだ内容の質問にはまず回答なんかつかない
teratailとかで質問したほうが100倍マシ 知恵袋に全く同じことで困ってる人がいたんですが、
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12148864962
java3Dライブラリを使ってコンパイルして出力したjarファイルが開けない
→環境変数の設定が〜
みたいな回答で、たしかに書いてあるとおりにしたら開けたんですが、
これって誰かに渡すときにはその人にもjava3Dをインストールしてもらわないといけないってことですよね?
jarに含めたりとかってできないんですか? >>137
jarにjarを含めるにはクラスローダを実装する必要があるみたい
そこでEclipseですよ
Eclipseならマウスかちかちでjarを含んだjarをエクスポートできる
Eclipse製のクラスローダが用意されてる あれ?でもJava3Dってネイティブ含んでなかったっけ? javaを触れ始めて3年位ですが簡単な事すら理解できてないへっぽこが失礼します。
とある人間が作ったA.jarの中に約40ほどファイルがあります。
そこにバグがあるのですが、jarを作った人間が多忙の為 私がそのファイルの中の調査をすることになりました。
(修正した箇所がわかりやすいよう、本来の使い方とは異なりますが継承+オーバーライドを使用し修正しています。)
メイン:main newでclassA(stringA,stringB)を呼び出し
hoge_project.dir1.classA newでclassBを呼び出し
hoge_project.dir2.classB newでclassCを呼び出し
hoge_project.dir3.classC extends でclassDを継承
hoge_project.dir3.classD こいつにエラーがありそう
エラーがありそうなメソッドを保有しているクラス"classD"を継承したクラスclassD_fixをhoge_project.dir3 に作成し、そのメソッドをオーバーライドしたクラスを入れ込んだjarファイルを作成することに成功(jar tfで確認)しました。
ですが、肝心のクラスAの継承に失敗していて 呼び出し元のメソッドが修正できず困っています。
エラーの内容はこんな感じでした。
classA_fix.java:7: エラー: クラス classAのコンストラクタ classAは指定された型に適用できません。
classA_fix.javaのソース
import hoge_project.dir1.classA;
public class classA_fix extends classA{//中身なし}
期待値:String,String
検出値:引数がありません。
理由:実引数リストと仮引数リストの長さが異なります。
ググって見たところ、メソッド自体が存在しない、もしくは引数が合わない等メソッドによる不具合が原因だと書かれていたので
念の為class classA_fixにコンストラクタっぽい感じでpublic void classA_fix(String stringA, String stringB){super(stringA,stringB)}等自分なりに色々やってみましたがうまくいかず・・・
クラスclassA_fixはクラスclassAを継承しただけで特にメソッドの上書きも行っていない何もない状態なのにこのようなエラーが出ていたため、わけが分からず困っています。
abstractは使用していません。
作成者とは連絡が取れない状況で、完成予定日もあるのでこちらで出来る限りの理由を探りたいのですが、何か良い方法はないでしょうか。 >>140 の名前は140です
書き込んでる間にレス番がかわってましたOTL すみません >>140
classA_fixなの?classD_fixなの? >>140
スーパークラスのコンストラクタの呼び出しに失敗してるわけっしょ
> public void classA_fix(String stringA, String stringB)
これはコンストラクタじゃなくてメソッドっすよね
コンストラクタをきちんと定義すればいけるんじゃないかな >>142
説明ベタですみません。
現在エラーがでているのはclassA_fixです。
classDにバグがあるのは間違いないのですが、classDを直接書き換えるのが怖いのと、
報告しなくては行けないので、修正した箇所がわかりやすいように classD_fix.classを作成し、修正しようとしています。
classD_fixのjavacには成功(動作は不明)、classD_fix.classの生成に成功しました。
今現在そのclassD_fixを使用して動かせるように各クラスファイルを修正しようとしています。
超へぽっこで デバッグをやるのはこれが初めてでどういった方法でやるべきなのかもわからず、
メモ帳とコマンドプロンプトでやってます・・・OTL >>143 こんな感じで書いたんですが駄目でした。 私もしかして コンストラクタの書き方間違えて・・・る?OTL
package hoge_project.dir1;
import hoge_project.dir1.classA;
public class classA_fix extends classA {
public classA_fix( String string_a,String string_b){
}
} >>145
スーパーのコンストラクターが呼ばれてないーので
super(string_a, string_b);
これを追加すればいけるんじゃないかな >>146 その通りにやったらjavac通りました!ありがとうございます!
superせず終わらせるとそこで処理が終わるだけでエラーにはならないのかななんて思ってましたがそんなことないんですね・・・
そして何故かmainスレッドにて java.lang.NoClassDefFoundError・・・OTL寝れなさそうだ うげあー
私は本物の素人ですが、現場の世界は色々と恐ろしいのですね…
参考書を読んで頑張ります superコンストラクターを呼ばないといけないわけではないので、原因はもう少し間接的なものだろう
フルコードがないと理由は不明 おそらく引数なしのコンストラクタだとちゃんと動かないスーパークラスなんだろう 3年もやってて継承元の引数ありコンストラクタがサブクラスに引き継がれないことも知らんとか
当然スパクラスに引数ありコンストラクタがあればサブクラスでそのコンストラクタを定義しなくちゃならない
ほんと相変わらずびっくりするぐらいレベル低いなここ 入門・初心者スレでレベルどうのこうのと言われましても…
あ、自分自身も含めてレベル低いって自虐ネタでしたか 回答つけてる奴等もどうしようもなくレベル低い馬鹿しかいないってことだよ阿呆
お前等全員1円で投げ売りされてる入門書100億回読んでからレスつけろよ阿呆 つまり変なのに絡まれないようにプログラミング歴は隠しとけってことだ
スレ民との約束だぞ >>154
もっと簡単にこのスレのレベルを上げる方法がある。物凄く簡単なことだ。
それは君が回答を書くことだよ。 >>156
文句しか言わないやつって何なんだろうね >>154
俺も、趣味でjavaを独学してる身だから、偉そうなこと言えないけど
1円で投げ売り
とか
100億回
とか
読み返して、恥ずかしくない? >>159
いらない。 そんなことより、webアプリやらandroidアプリでも作ってた方が有意義。
フレームワークで設計に触れられるし。 そしてうまい作り方を発見したと喜び勇んでブログで発表するとそんなもん何十年も前に本にまとめられて世界中の言語に翻訳されて売られまくった枯れ枯れの干からびたやり方だとコメントされまくる。 >>152
継承しなくちゃいけないわけでもないからな。 スッキリわかるJavaを利用してますが
dokojavaってなんとなく動作が
不安定な気がするのですが気のせいでしょうか。
同じプログラムでもエラーが出たり出なかったりします そもそもdokojavaを使う必要がない
手軽なオンライン環境ならideoneもpaiza.ioもある アンドロイドアプリを作りたいです。
どうやらjavaを知ることが第一歩のようですが、javaをマスターできれば
アンドロイドアプリ作れるようになれますか? いいえ
料理をする時に調理器具を使えるようになるだけではダメなのと同じで
料理毎に食材や調味料の組み合わせ方法や量も学ぶ必要があります
AndroidにはAndroid用のセオリーがあります >>169
では、いきなりアンドロイド用に
学習をしてもいいということでしょうか >>170
えっとね
お前みたいな論理性の欠如した馬鹿には一生無理だよ 性格悪いな
私生活上手く行ってないんだな
可哀想に すごーい!
テンプレみたいな返しをする
馬鹿なフレンズなんだね! >>170
ていうか、Javaどの程度わかってるかにもよる。言語の基礎部分知らなければ作るに作れないだろうし
それ以前に入門書のサンプルプログラムも何やってるのかソース見てもわからんだろう。 あと、どの程度のアプリを作りたいかにもよるな
ハローワールドを表示するだけなら、
初心者向けの本の書いてある通りにASをインストールしてボタンを押していけば、
一行もコードを書かずにアプリが出来上がるから、
javaどころか、どの言語も知らなくても問題ないしね コンストラクタの宣言にはstaticキーワードを付けないのに、
コンストラクタはなぜstaticなメソッドから呼び出せるの?? >>178
コンストラクタだけ特別扱いしているから。 >>178
「コンストラクタ」がメソッドから呼び出される?
コンストラクタはそもそもメソッドじゃないよ
メソッドじゃないものに、メソッドのルールを考えても意味ないんじゃね? >>181
そういう作りの言語だからとしか言えない。
なんだったらスッキリする言語を自分で作りなさい。
まあ確かにコンストラクタはいきなり呼べるので違和感あるかも知れないが、 new した時にメモリ確保されて
インスタンスが出来て、それからその中のコンストラクタが呼ばれると考えればいい。実際その通りだし。
C言語で実現するとしたら構造体のメモリを確保した直後にそのポインタを受け取って構造体の中身の初期化を
するようなのがコンストラクタね。 >>183
ちょっとわかった。
new演算子で動的にメモリを確保してその中身を初期化するのがコンストラクタの役割だから、
コンストラクタは動的な文脈で呼び出されるのか。 stream apiを使って
[1,1,2,2,3,3,3,1]
みたいなリストを
[1,2,3,1]
みたいに連続した同じ要素をまとめるコードはどう書けばいい? >>185
distinct()を流れのどこかに挟む >>174
中身の無い煽りはスルーでいいよ
料理のレシピを覚えても調理器具を使えないと料理は出来ないのと同じで
都度都度javaを覚える必要があります
いきなり開発環境のテンプレート見てわからないと思うから
ググって1つ1つ覚えるしかないかな >>185
インデックスで
int[] a = { 1, 1, 2, 2, 3, 3, 3, 1 };
IntStream.range(0, a.length)
.filter(i -> i == 0 ? true : a[i - 1] != a[i])
.map(i -> a[i])
.forEach(System.out::println); 重複削除ならこんなの見つけたよ。
http://www.sejuku.net/blog/15704
stream使ってないが非常にシンプル。 >>190
>>196
paiza.ioって、スゴいね!
こんな、便利なものがあったなんて知らなかったYo!! 無理やりstreamで実装するメリットが見当たらない でもまあ、お題が「streamapi」を使って、だからね
初心者スレとしてはメリットとかより、勉強になったかどうかだよね
もちろん
「このやり方の方が効率がいい」
ってのが明確な理由と共に示されれば、
それも勉強になるけどさ >>190
>>192
ありがとな
Stream api奥が深いわ スッキリ読みながら勉強の者だが、
プログラム言語って素晴らしいなあ
プロの方々はjavaをマスターして、効率よく業務に活かしているに違いない。 質問するのにも敬語すら使えない馬鹿をいちいち相手にしてるからお前等は馬鹿なんだよ
重複削除するのにいちいちマッチングしたりストリーム使ったり馬鹿の代表かよお前等w
ほんと阿呆の肥溜めだな >>203
最高に天才なあなたのコートを拝見できませんか? >>203
2chで敬語使えとか言うバカを久々に見たわ
不愉快だから黙ってろよ レベル低い馬鹿の上に質問する側が敬語も使えないとかただの池沼なんだから
お前が黙って首吊ってさっさと死ねよ低能馬鹿のゴミ 大きな大きなブーメランの映像が頭に思い浮かんだ
一体これはなんだったのだろうか
つづく >>203
そこで、皆が誉め称えるようなコードをパッと示したら格好いいのにね Java大好きだし腐すつもりはまったくないから
怒らないで欲しいけど
他の言語を色々やったあとでJavaに戻ってきたら
StreamAPIなるもんがあって
それを有難がってる(?)人々が居て
若干腰抜かす
StreamAPIがダメっていう主張じゃなくて
Javaにはいらんやん、って主張 主張したいなら論拠を示してくれないと反論もできないんですが ごもっとも
論拠も根拠も特にないので単に感想に差し替えさせてください
んな感想はチラシの裏に書け?
今から書いてきます失礼いたしました >>有難がってる(?)
有り難がってるようなレスはなかったと思うけど・・・
そもそも、ここは初心者スレだから、好奇心で色々と試してるってノリでしょ
ビックリする人がいることに驚いちゃうよ なんども書くような処理はモジュール化して再利用するって常識
Javaとか関係なしに当たり前のことをやってるのがstream api
これをなにか特別なものと考えて拒否感を持ったり崇拝する人はセンスがない
当たり前のように使おう 必要になったら使うでいいよ
必要なのにアレルギーよろしく拒否るからややこしくなる class Aho {
public static void main(String ... args) {
System.out.println("質問するのにも敬語すら使えない馬鹿をいちいち相手にしてるからお前等は馬鹿なんだよ");
System.out.println("重複削除するのにいちいちマッチングしたりストリーム使ったり馬鹿の代表かよお前等w");
System.out.println("ほんと阿呆の肥溜めだな");
}
} >>216
ま、そうだが、streamはある程度使って慣れないと使い所がよくわからないもののように思うな。
何せループでも実現できちゃうからな。そっちで慣れてる人は中々手を出さないのではないか?
他の言語で多用したいた場合はJavaでも使えて便利みたいに感じるかも知れんが。 お前みたい馬鹿のために用意されたものなんだからありがたく使っとけよ阿呆 C#, Java の、Parallel Stream で、複数コアを使える
Node.js は、JavaScript だから、シングルスレッドだろ。
数値計算などで、複数コアを使いたい場合に、困る プログラミングそのものを愛するか、プログラミングによって作られるものを愛するかの違いです >>223
何に対する意見だよw
仮にstreamapiを好むかどうかにしても、プログラミング自体が好きでもstreamapiが好きとも限らねえぞw
違いです、とかw >>175
お前はもう来るなよ。スレの主旨から言ってお前の言動は不適当。 ■ このスレッドは過去ログ倉庫に格納されています