[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/05 05:37 / Filesize : 295 KB / Number-of Response : 1047
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java入門・初心者質問スレ Part.8



1 名前:デフォルトの名無しさん mailto:sage [2018/06/07(木) 20:17:08.87 ID:N8MsK2gr0.net]
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.7
mevius.5ch.net/test/read.cgi/tech/1515549964/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured

752 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 21:05:38.09 ID:cJq6eeYEa.net]
>>720
理由と言われても、そう言う言語仕様だから。もう20年以上前に設計された言語だから、今の基準で見たら冗長な表現が多々ある。

あと配列においても多態性が〜、の部分は何が言いたいのか分からない。

753 名前:720 mailto:sage [2018/11/16(金) 00:48:09.83 ID:weOG1xUa0.net]
>>723
ありがとうございます。

その部分は勝手な憶測なので気にしないで下さい。
例えば、int型はdouble型に型変換されることもあり得るので、
例) double[] array2 = new int[5];
のような記述が出来るのかな?と思っただけです。

754 名前:デフォルトの名無しさん mailto:sage [2018/11/16(金) 06:24:36.92 ID:cFUtGW68a.net]
>>724
それは多態性というか暗黙的なキャストだな。
Javaではそれは出来ない。暗黙的キャストは便利なこともある反面、意図しないキャストでバグを生み出す可能性があるからJavaの設計思想とは相容れない。

755 名前:デフォルトの名無しさん [2018/11/16(金) 07:10:27.50 ID:tlDZCd2g0.net]
>>724
子の型の代入を認めるのを共変というのだけれども
配列の型は共変だから型が継承関係にあるならば代入できるよ

Number[] a;
a = new Integer[5];
a = new Double[5];

756 名前:デフォルトの名無しさん mailto:sage [2018/11/16(金) 08:33:57.46 ID:mPcqV91P0.net]
>>722
まぁ自分が何気なく書いて意図した結果にならなくて混乱するようなことになるなよってことだと思う

757 名前:デフォルトの名無しさん [2018/11/16(金) 16:52:39.39 ID:OkLwTKGUM.net]
>>722
プログラミング言語の資格はそういうもの。

そもそもC言語の影響を受けた言語では細かい部分を知っていないと、他人が書いたコードが読めない。

758 名前:720 mailto:sage [2018/11/16(金) 18:52:17.01 ID:weOG1xUa0.net]
>>725
ありがとうございます。

>>726
ありがとうございます。プリミティブ型は継承関係に無いから駄目ですね。

759 名前:デフォルトの名無しさん mailto:sage [2018/11/17(土) 17:43:14.07 ID:/eM8wfkM0.net]
https://qiita.com/syu_chan_1005/items/46f94412f7493d6e60eb
このサイトに従ってBuild ArtifactsまでしてコマンドプロンプトでIdeaProjects\test\out\artifacts\test_jarから
「java test」
と実行したのですが
「エラー: メイン・クラスtestが見つからなかったかロードできませんでした」
と言われ実行できません。どのようにすればよろしいでしょうか。

760 名前:デフォルトの名無しさん mailto:sage [2018/11/17(土) 17:58:07.43 ID:/eM8wfkM0.net]
>>730
自己解決しました。
.jarをjavaで走らそうとしたのが問題だったみたいで、
java -jar test.jarと入力したら無事出力されました。



761 名前:デフォルトの名無しさん mailto:sage [2018/11/18(日) 13:21:56.54 ID:KOW7JXzwa.net]
やだ〜へこむ〜

762 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 17:22:08.06 ID:ZS5AqKuz0.net]
スッキリわかるJava入門の第8章の練習問題を解き、以下のような
Clericクラスを作ったのですが、
https://pastebin.com/EZdvVESb
英語にすると訳が分からなくなる言葉もあったので、それらはローマ字に
した結果、英単語とローマ字が混在するコードになってしまったのですが、
問題でしょうか?

763 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:13:02.26 ID:vHw2N8A80.net]
>>733
自分1人しか弄らないなら好きにすればいいよ。
どうせならローマ字じゃなくて漢字や平仮名を使って日本語でそのまま命名することもできるから試してみるといい。

ただし一般論、というか仕事でやる開発なら英語で統一するのが普通なのでそれは忘れちゃいけない。

764 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:31:24.19 ID:Je8g3va9d.net]
入門に出てくるようなクラス名は普通に出てくる単語ばっかだろうからさっさと覚えたほうがいいでしょ

765 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:39:15.60 ID:97DIZmBta.net]
>>733
ソース見たけど、確かにkaifukuryoとか死ぬほど読みにくいから、これならいっそ「回復量」の日本語でもいいと思うw

766 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:40:59.11 ID:97DIZmBta.net]
うちの社内システムは何年も前から部分的に日本語変数名も使ってるけど、特に問題が起きたことはないよ

ただこの話題で議論が紛糾して荒れるのをネットで見かけるから、何がなんでも絶対に許さない人達がいるのは間違いないw

767 名前:デフォルトの名無しさん [2018/11/19(月) 20:51:25.27 ID:C68x9bSia.net]
うちの会社でうっかりそんなことしたら中国語で溢れるよ。あとドイツ語と英語。

あ、英語はいいのかw

768 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 23:59:34.33 ID:qLcuYLw7a.net]
総称型配列を生成したい…リフレクション使えばいける?

769 名前:733 mailto:sage [2018/11/20(火) 00:24:59.86 ID:n8v7mGgD0.net]
答えてくれた方、ありがとうございました。
なるべく英語で行くようにしたいと思います。

770 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 00:28:00.33 ID:MPotoW9R0.net]
ローマ字は特に気にしないけどおかしな英語だとモヤる
登録でregistってなんやねん



771 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:25:13.23 ID:+ftLPXCpa.net]
>>739
Array.newInstanceの結果をダウンキャスト
警告が出るが気にしない
外から引数でClass<T>を受け取るようにすれば多少はタイプセーフ風な雰囲気を醸し出せるかもしれない
Javaのジェネリックがハリボテの糞と呼ばれる所以だ

772 名前:デフォルトの名無しさん [2018/11/20(火) 01:33:24.00 ID:8KtihEK80.net]
>>741
すまん。昔量産してしまった
区分フラグとかも

773 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:42:27.99 ID:MPotoW9R0.net]
>>743
まあモヤるレベルだから別にいいんだけどさ
終わりの見えない関数とか、読み解くと結局意味のない処理とか、Objectに全てを詰め込み中身を変えまくる黒魔術に比べたら可愛いもんさ、ハハハ…… []
[ここ壊れてます]

775 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:55:25.40 ID:X8QFm2fdM.net]
Javaのジェネリクスが単なるObjectのシンタックスシュガーであることを考えると、
総称型の配列などというものは存在自体が常に虚偽であり明らかに矛盾していることがわかるだろう
Javaで総称型の配列が欲しいときは、ArrayList<>(これは実はObject[]をラップしている)を使うか、
単にObject[]を使っておいて辻褄合わせが必要なときに要素を適宜ダウンキャストしてやるかのどちらかだ
Javaのジェネリクスでは型の整合性を維持するのはジェネリックなメンバやクラスを作るプログラマの責任なんだよ
通常のアプリケーションコードで積極的に作るものではない

776 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 22:41:13.06 ID:QYuuoNJVd.net]
silverの問題集の解説見ながら勉強してるけどコンスタントプールってのがあるんだなぁ(こなみかん)

777 名前:デフォルトの名無しさん [2018/11/23(金) 21:42:39.82 ID:UR66aWLO0.net]
cyclopsを使ってダサいTRY-CATCHを改善してみたがカッコイイ

public static javafx.scene.image.Image loadImageFromFile(@NotNull Path path, double w, double h) {
return Try.withResources(() -> new FileInputStream(path.toFile()),
stream -> new javafx.scene.image.Image(stream, w, h, true, true),
IOException.class)
.onFail((e) -> GUICommon.debugMessage("loadImageFromFile >> File not found : " + path.toString()))
.get()
.orElse(null);
}

public static javafx.scene.image.Image loadImageFromURL(@NotNull URL url, double w, double h) {
return Try.withCatch(url::openConnection)
.peek(conn -> conn.setRequestProperty("User-Agent", "Wget/1.13.4 (linux-gnu)"))
.peek(conn -> conn.setRequestProperty("Referer", customReferrer(url, null)))
.flatMap(conn -> Try.withResources(conn::getInputStream,
stream -> new javafx.scene.image.Image(stream, w, h, true, true),
IOException.class))
.onFail((e) -> GUICommon.debugMessage("loadImageFromURL >> Cannot get image from : " + url.toString()))
.get()
.orElse(null);
}

778 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 03:52:43.89 ID:dszPmHpM0.net]
clone()メソッドについて質問です。
https://pastebin.com/iabGmAun
上記のBookクラスにおいて、フィールドに、Date型のpublishDateがあるのですが、
これをclone()でコピーするにあたっては深いコピーにする必要があるみたいなのですが、
String型は浅いコピーでよくてDate型は深いコピーにしないといけない理由は
何故でしょうか?

779 名前:デフォルトの名無しさん [2018/12/01(土) 11:04:34.18 ID:5cBxQ4wD0.net]
>>748
Date型は状態を変えられるから

たとえば単純にコピーするだけだと
こうなる

Book ┬ Date ─ 2018/12/01
Book ┘

Date.setTimeで状態を変えることができて
コピー先のBookの日付を変えると
コピー元のBookの日付も変わる

Bookごとに日付が異なるなら
BookをコピーするときにDateをコピーしないといけない

Stringは状態を変えられないから
同じものを参照しても問題ない

780 名前:748 mailto:sage [2018/12/01(土) 12:12:49.53 ID:dszPmHpM0.net]
>>749
丁寧にありがとうございました。



781 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 19:47:16.98 ID:6vF3BQAf0.net]
何でもいいから例外をなげたいんですけど
例外で調べても catch のサンプルばかりで投げ方がわかりません

782 名前:デフォルトの名無しさん [2018/12/02(日) 19:48:34.29 ID:4+IlSjWZ0.net]
>>751
throw new Exception("テスト");
これでおk

783 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 20:02:05.39 ID:6vF3BQAf0.net]
>>752
new でふつうにclassみたいに作れるんですね
ありがとうございました

784 名前:デフォルトの名無しさん [2018/12/02(日) 21:44:32.63 ID:324yNEli0.net]
基礎からのサーブレット Servlet/jsp 2009
この本で勉強するのは古すぎか?

785 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 07:20:06.09 ID:ygSmLhmHa.net]
>>753
みたいにっていうか、クラスだから。
Exceptionを継承して独自の例外クラスも作れる。

786 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 07:21:19.23 ID:ygSmLhmHa.net]
>>754
古すぎる。古文書レベル。
役に立たないどころか現代ではやってはいけないとされてるやり方が載ってる可能性もあるから、それを覚えてしまってむしろマイナスになるまであり得る。

787 名前:デフォルトの名無しさん mailto:age [2018/12/03(月) 08:28:43.59 ID:sGONNGUuM.net]
エスアイアーではまだ十分役に立つよ

788 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 18:42:47.05 ID:C4qy2S1/0.net]
列挙型のフィールドを持つクラスを作ったのですが……
同じ列挙型を2つ持たせる場合があるものの、1つのみ持つ場合もあることで問題が発生しています
コンストラクタ引数で列挙型指定する際に、必ず1つ指定するが、2つ目は(言うなら)nullでも構わない
列挙型の中にnull相当のものを追加してもよいと思ったのですが、それが1つ目に指定されてしまうと困るので追加したくない……という状態です

具体的には、いくつかの属性を列挙型で指定し、サブ属性は(同じ内容+(サブ属性なし))というかたちにしたいのです
サブ属性用に(同じ内容+なし)の列挙型を追加するしかないでしょうか……

789 名前:デフォルトの名無しさん [2018/12/03(月) 19:43:01.66 ID:SSwMcRlR0.net]
>>758
引数チェックして例外投げればいんじゃない?
https://paiza.io/projects/smPMtDarEAoBp1uNWPYm8w?language=java

790 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 20:03:14.72 ID:YDqptBck0.net]
>>754
つか、古すぎてその本に書いてあるバージョンの開発環境を用意する時点で挫折すると思う。



791 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 20:22:15.78 ID:C4qy2S1/0.net]
>>759
そうか、1つ目にnull入れられないようにチェック入れりゃよかったんですね
エラーを使う発想がなかった

792 名前:デフォルトの名無しさん [2018/12/03(月) 20:50:22.63 ID:6IhUZ/y0a.net]
>>758
どういう状況なのかよくわからない。
同じメソッド名で一つの引数のやつと二つの引数のやつ作れば良いだけってことない?
つまりメソッドのオーバーロード。

793 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 21:24:42.76 ID:C4qy2S1/0.net]
>>762
それだと後々面倒だという理由があったような気がするんだけどむしろ後々表示するときに処理考えたほうが簡単に済みそうな気もしてきました……
こういう設計?ってどういう順番でやってくもんなんでしょうか

794 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 21:29:04.09 ID:C4qy2S1/0.net]
データを呼び出して表示する目的だったので、とりあえずtoStringのオーバーライドができてからデータ登録用のコンストラクタを調整していくことにしました

795 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 07:39:08.42 ID:aQtlFGVia.net]
拡張for文って配列でもコレクションでも動作しますよね?
ということは、双方に共通するクラスなりインターフェースなりがあるのでしょうか?
配列またはコレクションを引数に取る関数を作りたくて、内部処理は同じなので、オーバーロードではなく一つの関数で済ませたいのですが

796 名前:デフォルトの名無しさん mailto:age [2018/12/05(水) 08:50:55.63 ID:uTDw63xLM.net]
>>765
共通のインターフェースは存在しないです
コンパイラがIterableか配列か判断して処理します

オーバーロードを使いましょう

797 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 12:36:33.07 ID:1UnNMx3Qa.net]
>>766
ありがとうございます

それともう一つ質問させてください
リストを引数に取ってリストを返す関数で、よく
public <T> List<T> hoge(List<T> list){
// 何らかの処理
}
のように書きますが、この引数のリストがArrayListならArrayListを、LinkedListならLinkedListを、といったように、引数と同じ型のインスタンスを返したいです
ポリモーフィズムというよりは型クラスのイメージです

境界化して
public <A extends List<T>, T> A<T> piyo(A<T> list){}
のように書いてみましたが、「型Aは総称ではありません」とエラーになりました。

ワイルドカードなどを使えばいいのでしょうか?
というかあまりJava的な書き方ではないですかね?

798 名前:デフォルトの名無しさん mailto:age [2018/12/05(水) 13:09:26.62 ID:uTDw63xLM.net]
>>767
引数の型と戻り値の型をAにすればいんじゃないでしょうか

私はそういうの必要になったことがないです
List返すぜヒャッハーなコードしか書いたことないです

Javaでそういうの書きまくってる世紀末ジェネリック伝説
みたいな人もいると思いますけど

799 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 15:53:00.93 ID:1UnNMx3Qa.net]
>>768
何度もありがとうございます
混乱させるのも嫌なので普通の書き方に準拠します
Javaは慣れてないので勉強します

800 名前:デフォルトの名無しさん [2018/12/05(水) 16:52:13.39 ID:ifntcr/4a.net]
>>767
LinkedListってArrayListやListと用途が違う気が。。。
素直に?オーバーロードで良いんじゃ無いか?
多態性はジェネリックだけにあらずよ?
(と言うか、Java初期にはジェネリック無かったし)



801 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 18:38:20.62 ID:1UnNMx3Qa.net]
>>770
Listの汎用関数とか、Mapの汎用関数を作ってたら思った次第です
Mapなら、HashMapはHashMap、EnumMapはEnumMapで返したいなとかです
素直にオーバーロードしますね
ありがとうございました

802 名前:デフォルトの名無しさん [2018/12/05(水) 20:40:25.38 ID:tLhebNm/a.net]
それって呼び出す側にnewさせて引数で受け取れば良いだけでは?
自分でnewしてリターン値にしないなら関係なくなるよね。

803 名前:デフォルトの名無しさん [2018/12/06(木) 10:12:58.64 ID:Wmyc4Uu/0.net]
素朴な疑問なのですが
Javaプログラマーってみんなオブジェクト指向やデザインパターンやイベントリスナーのしくみなんかを完璧に理解して使いこなせているんですか?
別に自慢じゃないけどオレは理系で高学歴ですが
こんな難解複雑なものをみんなたやすく理解できるものじゃないと思うのですが。
高校の数学物理化学をレベルの高い大学に受かるくらいの頭がないと無理と感じます。

804 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 11:07:38.61 ID:nonVVsji0.net]
デザインパターンは、オブジェクト同士の疎結合の歴史。
DI, Flux, Pub-Sub(発行・購読)とか

WEB+DB 106号に載ってる。
スマホアプリの設計。DI, MVVM, Flux

805 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 12:20:30.95 ID:UmHyXr4oa.net]
>>772
出来るだけ副作用のない関数にしたかったので、その手は見送りました

806 名前:デフォルトの名無しさん [2018/12/06(木) 12:31:53.41 ID:nzH90qpKa.net]
>>773
容易くかどうかはわからんが、ずっとやってりゃ小学生でもわかるようになると思うけどな。
このスレにもいないか?小学生の頃からプログラミングたできたやつ。

807 名前:デフォルトの名無しさん [2018/12/06(木) 17:43:06.98 ID:Wmyc4Uu/0.net]
>>774
>>776
なるほど。
まあワタシは頭がいいのですぐ理解して使いこなせそうですが。
ハッハッハ!

ところでスキルを身に着けたときやっぱり報酬は期待したいのですが
年収1000万以上、できるだけ高く、を目指すためには、どのようなことをすればいいですか?
これはヒューマンスキルも大きくかかってくると思いますが、具体的にどんなことをすれば高収入になりますか?
野球でも年俸はFAがからむと高収入になるし、それがないと成績がいいの

808 名前:ノ低収入の選手もいるし、
なにかコツを知ってるだけで同じスキルなのに収入は天と地ほどの大差になるというのが現状のような気がして。
[]
[ここ壊れてます]

809 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 17:50:43.36 ID:siOfDNuRd.net]
そういう事を聞かなくても行動できるのが、高収入な人だと思うけど。

810 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 17:55:06.03 ID:jTeUvFfL0.net]
グーの音もでねえw



811 名前:デフォルトの名無しさん [2018/12/06(木) 18:08:44.44 ID:nzH90qpKa.net]
グー

812 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 19:12:26.31 ID:Cn1g7mwL0.net]
>>773
ちゃんと理解出来ている人は極少数だと思う
でも理解出来てなくてもある程度実装は出来てしまうしプログラマにも成れてしまうからどヤバいコードが生成されてしまったりするわけで

813 名前:デフォルトの名無しさん [2018/12/06(木) 19:33:36.24 ID:Wmyc4Uu/0.net]
>>781
なるほどそうなのですね。納得。
オレはわりと進学校出身だけど、まわりはみんな数学物理化学で苦労しててオレだけできたから
プログラマの仕事でもそう簡単にオブジェクト指向/デザインパターン/イベントリスナーを理解できる人はいない気はしていました。

でもこれに甘えずオレはどんどん勉強してスキルアップしていきたいと思います。
オレは経験がないだけど伸びしろは無限にあると思っているので。

オレみたいな人がやっぱりプログラミングに向いてるよね?w
高校レベルの数学物理化学で苦労するようじゃプログラミングも高度なことは絶対できなそうだし。

814 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 19:37:14.79 ID:vPx9vAPGa.net]
>>782
傲慢であることはいわゆるプログラマーの三大美徳の1つなので安心して励んでください

815 名前:デフォルトの名無しさん [2018/12/06(木) 19:44:56.31 ID:nzH90qpKa.net]
いや、使われる能力がちょっと違うと思うぞ。
数学や物理が絡まなくはないし絡められるわけだが、かといってそんなもんほとんど知らないままプログラミングできるようになるやつは居るだろうしな。

816 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 20:46:52.33 ID:Cn1g7mwL0.net]
>>782
数物化が出来る→プログラミングが出来る
は一般に成り立たないかな
情報系でそれなりに良い成績を獲ってるけど実技系の科目の成績は低いみたいな人は結構いたりするし情報系であってもちゃんと理解出来てる人はそんなに多くない
まぁ相関が全く無いとは思わないけどね

817 名前:デフォルトの名無しさん mailto:sage [2018/12/07(金) 07:06:25.60 ID:OaIqSJqTa.net]
>>785
そこらへんは知識そのものというより、求められる思考方法が近しいってのはある。
だから数学が出来ればプログラミングが出来るっていうより、数学の得意なタイプのやつはプログラミングも得意であることが多い、とかそういう感じだと思う

818 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 03:28:29.21 ID:BPBNTIF+0.net]
Windows10のJava1.8以上のバージョンのSwingでの日本語入力する時、
編集中の行が画面の一番下の方の時に変換すると、日本語変換候補Windowが編集中の行と重なって、編集中の文字列を隠してしまうバグのようなものが
自分の環境ではおきるのですが、他の人はどうですか?

Swingのテキストコンポーネントでおきます。

819 名前:デフォルトの名無しさん [2018/12/11(火) 06:12:00.67 ID:ms9OZaRY0.net]
V2Cでもそうなる

820 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 13:05:28.74 ID:BPBNTIF+0.net]
>>788
ありがとう。
これだけ普通の条件で簡単に起きるのに、ずっとバグが直らないのはSwingで日本語入力なんてほとんど使われてないからなんだろうな。
Intellijとか使われてるけど、プログラム用のエディタだから日本語はほとんど入力されないのかな。


バグレポートかなんかしたいと思ったけど、ます英語を勉強しなきゃいけないし。



821 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 13:10:54.23 ID:BPBNTIF+0.net]
編集中の行の下に候補ウィンドウを表示する時はうまくいくんだけど、
編集中の上に候補ウィンドウを表示する時(つまり編集中の行が画面の下の方の時)、重なってしまう。
IMEのAPIのバグらしく、Swing使ってる限り独自のテキストコンポーネントを作っても直らない。

822 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 00:47:28.4 ]
[ここ壊れてます]

823 名前:9 ID:+doa0nVt0.net mailto: 3つ組の値を返したいときってそれ用のクラス作った方がいいの?
それとも汎用的なタプル的なの作ってそっちに詰め込んだ方がいい?
クラスにしたとして、他の箇所で使うかは微妙なところ
もしかしたらもう一回くらい使うかもってくらい
[]
[ここ壊れてます]

824 名前:デフォルトの名無しさん [2018/12/14(金) 09:55:52.99 ID:cCP3RgWTa.net]
>>791
配列やリスト等に突っ込んで返す方法もあるが、本当にそれで問題ないかはよく考えた方が良いと思う。

825 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 17:58:19.96 ID:mN1ioE7i0.net]
>>791
Hashmapに突っ込むとかもある。
俺なら絶対にクラスを作るけど。

826 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 18:57:38.32 ID:yKLaTwQg0.net]
Ruby なら、メソッドの委譲機能を定義する、forwardable, delegate

継承(is-a)じゃなくて、汎用的なコンテナ(配列・リスト・辞書)に処理を委譲するような形(has-a)

クラス内に、汎用的なコンテナを作って、
push, pop など、同じメソッド名で、処理を内部コンテナに丸投げする

827 名前:デフォルトの名無しさん [2018/12/20(木) 10:29:23.88 ID:uzBoRH9c0.net]
VBAは経験豊富だけどJavaは初めてです。
もちろんいっぱい勉強しました。
転職アピールで取ったほうがいい資格はなにがありますでしょうか?
Java経験ないので面接の質疑応答と資格アピールでがんばろうと思うのですが。

資格受験はすぐに取り掛かる予定です。今月にでも!

828 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 11:33:53.15 ID:hE8cxs9Xa.net]
earとかwarがいまいちわからないです
開発時にファイルAでファイルB(別パッケージ)をimportして使っていて、eclipse上ではコンパイルも通っていました
でもデプロイ段階になってから、先輩にこの2つのパッケージは別々のwar?になるからimportできないよと言われました

自分の感覚だとそもそもそれでコンパイルが通るようになってるのがおかしい気がするのですが、Javaの世界だとそれが普通なんですか?

829 名前:デフォルトの名無しさん [2018/12/20(木) 12:23:41.18 ID:uzBoRH9c0.net]
earは耳、warは戦争です。
発音の注意としては、warは「ウォー」であって「ウァー」ではありません。
ここを押さえておけば大丈夫。

830 名前:デフォルトの名無しさん [2018/12/20(木) 22:34:23.24 ID:6pIAvd2J0.net]
うぁー



831 名前:デフォルトの名無しさん [2018/12/20(木) 22:40:41.67 ID:9plr5EIz0.net]
>>796
それはear、war云々の話ではなく
開発段階とデプロイ段階で違うことをやってるのがおかしいという話では?

832 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 22:44:39.27 ID:JiVjjaVo0.net]
>>799
あ、それです
ただJava界隈だとそれが普通なのかなと思いまして

833 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 23:04:28.20 ID:IcrQnoua0.net]
ear, war, tar など、ar とついているものは、zip などの圧縮 archive だろ。
サーバーにデプロイするために、1つにまとめる

だから、a.ear の中から、b.war の中の、オブジェクト・関数などは使えないのだろう

2つもデプロイしないから。
デプロイするのは、1つだけ

「java ear war」で検索!

834 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 23:44:55.08 ID:uRkd43kpd.net]
>>801
tarは非圧縮では?

835 名前:デフォルトの名無しさん mailto:sage [2018/12/22(土) 02:51:17.48 ID:Mf8aObFB0.net]
本来アーカイブと圧縮は別だからな

836 名前:デフォルトの名無しさん [2018/12/23(日) 17:21:45.07 ID:yY9Kiav4a.net]
tarは頭からファイル名、内容の順で入ってるだけだからいまいち使い辛いな。
ファイル名

837 名前:出したいだけでも途中に大きいファイルがあると待たされる。
テープ装置用のコマンドを無理矢理使い回してるのがいかんよな。
せめてファイル名だけ並べたヘッダだけでも別に用意すればいいのに。
[]
[ここ壊れてます]

838 名前:デフォルトの名無しさん mailto:sage [2018/12/23(日) 19:04:58.22 ID:TNYL2NhX0.net]
>>804
テープ用のコマンドを無理矢理使いまわしてるんじゃなくて、今でもテープに書いたりもするぞ。-Mでマルチボリュームにして、-Lでサイズ指定したらテープ交換メッセージ出る。
そうしとかないとボリュームまたぎのファイル探しづらいし、そういうもんじゃねえかなぁ。
ディスクに落とすとしても、ボリューム切り替わるたびに最初のディスク入れさせるとか狂気の沙汰な気がする。

839 名前:デフォルトの名無しさん [2018/12/25(火) 17:56:14.99 ID:Waofyifpa.net]
まあ今でもテープ装置があれば使うのはわかる。
しかしテープではなく普通のファイルに書くならもう一ひねり欲しいところ。

840 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:14:58.54 ID:rBFfBn4R0.net]
silver黒本で勉強してて、例外終わらせたと思ったら最終章でラムダ式とかいう完全に新しいやつでてきてわろた
仕様が覚えられん



841 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:40:11.15 ID:uncIR6SLM.net]
ラムダなんか平均的なJava土方現場ならもれなく使用禁止だから安心していい
その証拠にこのスレでも滅多に出てこないだろ?

842 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:44:18.00 ID:qkJ7OcChd.net]
そうなのか、まあ試験用で一通り覚えないといけないけど
考え方とか他の言語やるときに役立つかな

843 名前: mailto:sage [2019/01/01(火) 17:32:31.57 ID:+TypiBw50.net]
Javaのラムダはコンビネータを記述できますか?出来ないのなら不要(ラムダの意味がない)と思います

844 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 18:42:27.39 ID:d0qESFYs0.net]
ラムダっていうか関数型の概念をJavaを通じて学ぶのは無謀だから試験用に割り切るしかない

845 名前:デフォルトの名無しさん [2019/01/01(火) 22:01:03.29 ID:dc6+vvYb0.net]
>>810
は?

import java.util.function.Supplier;

public class Test {
 public static void main(String[] args) {
  バニーガール a = new バニーガール(() -> "巨乳");
  a.ぱふぱふ();
 }
}

class バニーガール {
 Supplier<String> create;

 バニーガール(Supplier<String> create) {
  this.create = create;
 }

 void ぱふぱふ() {
  String おっぱい = create.get();
  System.out.printf("%sでぱふぱふ", おっぱい);
 }
}

846 名前:デフォルトの名無しさん [2019/01/01(火) 22:01:24.13 ID:dc6+vvYb0.net]
これがFactoryパターン

847 名前: mailto:sage [2019/01/01(火) 22:22:19.85 ID:+TypiBw50.net]
>>812-813
は?
それのどこがコンビネータですか?

848 名前:デフォルトの名無しさん [2019/01/01(火) 22:32:19.26 ID:dc6+vvYb0.net]
>>814
コンビネータとは関係なくラムダ式は便利だよ
コンビネータ仕事で使うことないやろ
それを言うとんねん

849 名前:デフォルトの名無しさん [2019/01/01(火) 22:32:48.32 ID:dc6+vvYb0.net]
アホがなあにがコンビネータだバカが

850 名前: mailto:sage [2019/01/02(水) 03:25:42.83 ID:U9fPlruq0.net]
>>815
コンビネータを記述できるからλ式に存在意義があるのであって、コンビネータを記述できないλ式なんて「λ式」と名乗る資格がない文法的屑仕様にしか見えないのですけれども



851 名前:デフォルトの名無しさん [2019/01/02(水) 13:27:44.18 ID:iJhnqyOR0.net]
>>817
コンビネータ記述できなかったの?

それはそれとしてJavaのラムダ式はコンビネータとは関係なく
匿名クラスを書かなくてすむから便利だと思うよ
Streamとかで使ったら便利だよ

852 名前:デフォルトの名無しさん [2019/01/02(水) 13:29:49.59 ID:iJhnqyOR0.net]
導入した意図も知ろうとしないで
屑仕様と言う人にJavaを語る資格があるとは思えない
普段Java使ってるの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<295KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef