5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

やっぱ多重継承無いからjava糞だわ。

1 :デフォルトの名無しさん:02/04/17 21:37
複数のクラスを中身いじらずにいっぺんにテストしたいんだけど、
多重継承が無いからテストクラス作れねーよ。
settergetterの無いフィールドの受け渡しができねーんだよ。
あっちこっちにテストクラスつくるのは嫌なんだよ。
多重継承があれば一箇所でスマートにできるのによ。糞javaが。

2 :デフォルトの名無しさん:02/04/17 21:40
オマエが糞

3 :デフォルトの名無しさん:02/04/17 21:43
テスト奨励するなら多重継承させろやチンカスjavaが

4 :デフォルトの名無しさん:02/04/17 21:45
>>1を処刑してもいいですか?

5 :デフォルトの名無しさん:02/04/17 21:45
いいですが、次の処刑は貴方です

6 :デフォルトの名無しさん:02/04/17 21:47
>>1が肥溜に落ちたスレはここですか?

7 :デフォルトの名無しさん:02/04/17 21:47
ばいざうぇいらっきんぐまるちぷるいんへりたんすじゃばいずしっと

8 :デフォルトの名無しさん:02/04/17 21:52
なんで多重継承しなきゃならんのよ?

9 :デフォルトの名無しさん:02/04/17 21:59
(゚□゚)/オオー

10 :デフォルトの名無しさん:02/04/17 22:13
つまり、>>1 がウンコ

11 :デフォルトの名無しさん:02/04/17 22:14
>>1
なるほど。よくわかったよ。
 
 
 
 
 
 
 
 
 
 
 
 
 
                                             2行目から読んでないけど。

12 :デフォルトの名無しさん:02/04/17 22:17
>>11 縦読みです

13 :デフォルトの名無しさん:02/04/17 22:23
継承したところでprivateなフィールドにはアクセスできんぞ。

14 :デフォルトの名無しさん:02/04/17 22:34
>>1
インナークラス使いこなせないアフォが、よくそういうこと言うよな。
インナー使えば殆ど同じことになるのに。

15 :デフォルトの名無しさん:02/04/17 22:34
どうも1はis-aとhas-aも知らんらすぃ

16 :デフォルトの名無しさん:02/04/17 22:34

  ○ <コシヒカリッ!
―┼―
┌┴┐

17 :デフォルトの名無しさん:02/04/17 22:48
・・・んで?

18 :デフォルトの名無しさん:02/04/17 22:49
C++ の std::basic_fstream を見よ。
立派に多重継承が使われておるではないか。

19 :デフォルトの名無しさん:02/04/17 22:53
>>1
リフレクションを知らない馬鹿発見。

20 :デフォルトの名無しさん:02/04/17 22:57
>18
だから、どうだってのよ?

21 :デフォルトの名無しさん:02/04/17 23:06
結局いちいちテストクラスをそれぞれのパッケージにいれるしかない
やつらは開き直って、テストクラスも一緒にいれてテストしまくるのが
良いんだとかほざいてるが。

22 :デフォルトの名無しさん:02/04/17 23:14
refrection でプライベートメンバにアクセスするのはダメ?
個人的には プライベートメンバにアクセスできないと
テストできない、ってのは いまいちスマートじゃないと思うけど、
そこんとこ 1 はどー思ってんだろ。


23 :デフォルトの名無しさん:02/04/17 23:17
reflectionだ。 鬱死

24 :デフォルトの名無しさん:02/04/17 23:32
>>1
Javaがゴミなのは今更言わなくてもみんなわかってるよ。

25 :デフォルトの名無しさん:02/04/17 23:36
>>25

じゃあ何がイイの? まさか C# とか?

26 :デフォルトの名無しさん:02/04/17 23:38
>>25
あなたは何も分かってないようだね。
C++をとことん勉強しなさいそして心の病気になりなさい
そうすればC++を崇拝するようになるから

27 :デフォルトの名無しさん:02/04/17 23:41
>>25
自問。いいねえ。

28 :デフォルトの名無しさん:02/04/18 00:58
Javaだめだな

29 :デフォルトの名無しさん:02/04/18 01:21
settergetterの無いフィールドはテストすべきなんだろうか。

30 :デフォルトの名無しさん:02/04/18 01:34
場合によるんじゃない?
隠蔽がキツイ場合は それしか方法がない
場合もあるかもしれんし。

31 :中日ファン@阪神に連勝モード:02/04/18 01:47
>>25
C#も多重継承はないけど・・・いいよ〜言語仕様読んでてとろけそうになった

ところで多重継承の使える言語ってC++以外だと何があるのかな
俺が知ってるのは Eiffel だけなんだけど

32 :デフォルトの名無しさん:02/04/18 04:09
>>31
Satherは?(w
あとCLOSとか。
意外なところでPythonとPerlとか。


33 :デフォルトの名無しさん:02/04/18 04:32
DelphiのObjectPascalもJavaと同じようなクラスモデルですけども
implementsがあるおかげで多重継承に近い真似ができますよ。

34 :デフォルトの名無しさん:02/04/18 18:58
C#ってテンプレートあるの?
文面がCにより近いJavaだという認識しか無いんだが

35 :デフォルトの名無しさん:02/04/19 00:00
リフレクションだと、親クラスが持つpublicじゃないフィールドにアクセスできなかった。
自分自身が持つフィールドならprivateでもアクセスできたけど。
しかしこれではカプセル化が破綻してるのではないか。


36 :デフォルトの名無しさん:02/04/19 00:06
>>34
次のバージョンで実装されるという噂

37 :デフォルトの名無しさん:02/04/19 00:11
>>31
もれも最初はとろけた。
そして次第に不満な点も見えてきた。
そういうもんだ。

38 :デフォルトの名無しさん:02/04/19 00:18
>>35
ハァ?

ところで、みんな知ってるのか?
java.lang.reflect.AccessibleObject#setAccessible(boolean)
完璧な隠蔽破壊をおこなう悪魔のメソッド。

39 :デフォルトの名無しさん:02/04/19 00:27
>>38
やっぱり反論できねーのか(プププ

40 :38:02/04/19 00:30
>>39
ワケワカ。アタマダイジョウブデスカ?

41 :デフォルトの名無しさん:02/04/19 00:33
やっぱりJava厨はイタいな
まともなレスもできねえのか(藁

42 :デフォルトの名無しさん:02/04/19 00:36
>リフレクションだと、親クラスが持つpublicじゃないフィールドにアクセスできなかった。
ハァ?

>自分自身が持つフィールドならprivateでもアクセスできたけど。
ハァァ?自分のフィールドにアクセスするのにリフレクション?

>しかしこれではカプセル化が破綻してるのではないか。
ハァァァァ?意味不明。分かってないでしょ、あんた。


43 :デフォルトの名無しさん:02/04/19 00:43
javaが糞なのは当然なのでこのスレは終了しますた。

44 :こりゃ毎日永久ageだな…:02/04/19 00:44
>>42
なんだ日本語が読めないのか。
javaを使うと頭が悪くなるようだな。

45 :デフォルトの名無しさん:02/04/19 00:45
>>43
×java
>>43の脳みそ

46 :デフォルトの名無しさん:02/04/19 00:46
>>44
日本語は読めますが、ドキュソのたわごとの真意は測りかねます。

47 :デフォルトの名無しさん:02/04/19 00:46
ハァァァァ Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>>> Java


48 :38=42=46:02/04/19 00:48
しまった、ネタに煽られた。逝って来ます。

49 :デフォルトの名無しさん:02/04/19 00:58
Javaはドキュンが多い
これ定説

50 :デフォルトの名無しさん:02/04/19 01:01
会社の厨房Java信者うざい
みんなひきまくってる


51 :デフォルトの名無しさん:02/04/19 01:03
Ruby!!


52 :デフォルトの名無しさん:02/04/19 01:05
いずれJava厨もブビ厨やルビ厨と同列扱いされる日も来るな。

53 :デフォルトの名無しさん:02/04/19 01:10
>>52は必ず当たると評判の預言者

54 :デフォルトの名無しさん:02/04/19 01:15
>>52
とはいえ>>52ほどのアフォにはならないと思われ。

55 :デフォルトの名無しさん:02/04/19 01:27
継承使うほうがアフォ。
単体テストすんのはもっとアフォ。

56 :デフォルトの名無しさん:02/04/19 01:52
>>55
C しかできないジジイですか?

57 :デフォルトの名無しさん:02/04/19 02:18
age



58 :デフォルトの名無しさん:02/04/19 02:34
>>50
どっちかっつーと、ひかれてるのは>>50のほうだと思われ。

59 :デフォルトの名無しさん:02/04/19 03:24
>>58はアフォですね?

60 :デフォルトの名無しさん:02/04/19 03:54
>>50
ひくといわれると轢くという言葉がまず思い浮かぶな。
会社の Java 厨房を集団轢殺する宣言かと思ったよ。

61 :デフォルトの名無しさん:02/04/19 08:25
Java厨必死だな(藁

62 :デフォルトの名無しさん:02/04/19 08:26
>>61
必死になってあげてます。

63 :デフォルトの名無しさん:02/04/19 09:50
>多重継承があれば一箇所でスマートにできるのによ。
C++の多重継承じゃできないな・・・・


64 :デフォルトの名無しさん:02/04/19 10:48
869 名前:名前は開発中のものです。 02/04/19 10:46 ID:???
>>865
言語に優劣は無いのれす。
開発者の能力による結果の優劣が出やすいかどうかなのれす。

言語に文句をつけるヤシは
「俺が勉強できないのはノートと鉛筆が悪いからだ!」
と言ってるのと同じなのれす。バカを晒しているだけなのれす。憐れれすねー。

65 :デフォルトの名無しさん:02/04/19 10:53
>>1
Reflection使えばいいじゃん


66 : :02/04/19 11:11
あの〜>>1〜へとぉ気ままにreflection♪



67 :デフォルトの名無しさん:02/04/19 11:38
Ruby!
と叫んだところで、Rubyにも多重継承無いんだけど、
Ruby厨って何がしたいの?

ついでに、Rubyにはprivateだろうがアクセスできる破壊的な方法が存在する。

68 :デフォルトの名無しさん:02/04/19 11:41
糞スレ立てる前に「Java で private メンバにアクセスする方法は
ないですか?」って聞けば莫迦を晒さなくてすんだのにな (w

69 :デフォルトの名無しさん:02/04/19 12:02
Submarine Reflection!

70 :デフォルトの名無しさん:02/04/19 12:27
>>68
そういう単発質問スレを立てるとみた。

71 :デフォルトの名無しさん:02/04/19 21:58
>>67
mix-in は制限された多重継承だよ

72 :デフォルトの名無しさん:02/04/20 22:18
intarfaceの中に実装も書ければ良いんだけどねー
テンプレートみたいにimplimentする側で、コードが展開されるっていうやつで。

73 :デフォルトの名無しさん:02/04/20 22:22
class Hoge{
 class Asub extends A{}
 class Bsub extends B{}
}

こうすりゃ多重継承と同じことが出来るってば。
この話題終了しろ。

74 :デフォルトの名無しさん:02/04/20 22:23
>>1
JavaでC++と同じことが出来ないからといって
糞扱いはないんじゃないの?
別物だと考えることは出来ないのか?
おまえの考えだと言語がすべて同じ考えで作られていないといけないようで
それこそおかしい

75 :デフォルトの名無しさん:02/04/20 23:36
>>73
インナークラスは多重継承とは使いどころが違う気がするのですが‥‥。


76 :デフォルトの名無しさん:02/04/20 23:49
>>75
うむ。どうやってHogeを親クラスにキャストするんだ。

77 :デフォルトの名無しさん:02/04/20 23:52
interfaceは多重継承です。
インターフェイスだけしか継承できませんがね。


78 :デフォルトの名無しさん:02/04/21 00:43
多重継承使いたがる奴はクラスをオブジェクト指向的に扱っていない背教者。

79 :デフォルトの名無しさん:02/04/21 00:56
>>78
あほ!勉強しろ、オブジェクト指向って7パターンあるの知ってるか?
多重継承しないって方法はその1つでしかないのだよ
それをJava,C#とも採用しているだけのこと

80 :デフォルトの名無しさん:02/04/21 01:05
70's-80's goto 文不要論
90's- 多重継承不要論

81 :デフォルトの名無しさん:02/04/21 01:14
00's オブジェクト思考言語不要論 (藁

82 :デフォルトの名無しさん:02/04/21 01:20
C++用設計しといてJavaで実装するなよぉ

83 :デフォルトの名無しさん:02/04/21 01:23
>>79
その本?書いた奴が背教者なだけ。

84 :デフォルトの名無しさん:02/04/21 01:23
>>78
>クラスをオブジェクト指向的に
これって、どういう意味?

>>79
>オブジェクト指向って7パターンあるの知ってるか?
えっ。7パターン?初耳です。
どんなパターン?教えて。

85 :デフォルトの名無しさん:02/04/21 01:33
>クラスをオブジェクト指向的に

オブジェクト指向的なクラスとは、意味的にモノとして明確に捉える
ことができる。
そうじゃないのは手続きの集合だかアルゴリズム集だか
判らないような体裁を成している。

多重継承やりたがる奴はCの#include代用として使っているにすぎず、
オブジェクトとしての体裁がなっていない。

86 :84:02/04/21 01:57
>>85
人間がよく使っているオブジェクトは、複数の要素を持っていることが多い。
だから各要素にバラバラにしてから多重継承するのが、正しいような気がする。

ただし多重継承は構造的欠陥が多い。
適用できる場面は、かなり少ない。

87 :デフォルトの名無しさん:02/04/21 02:03
本読んで分かった気になってる馬鹿ども、分かってるか?
オブジェクト指向プログラミングでは、そう簡単に継承すべき
じゃないんだぞ。

実装を継承したい場合→出来る限りコンポジションにしろ。
概念を継承したい場合→スーパークラスはInterfaceにしろ。スーパークラスに実装すんな。

極言すれば、ポリモルフィズムが必要な局面以外では、継承は必須ではない。
にもかかわらず継承しなければ実装できないような場合、設計がミスっている事も多い。

88 :デフォルトの名無しさん:02/04/21 02:12
>>87
>実装を継承したい場合→出来る限りコンポジションにしろ。
しかたなく、やってますよ。
しかも、コンポジションするための処理を委譲するだけのコードが
全体の大半を占めてしまうんですよ。
でも、これって正しい方法なんでしょうか?
どうも無駄じゃないかなーと思っています。

自動的に処理を委譲(forward)してくれる機能があったらなーと思ってます。
ただ、それだけ。

89 :デフォルトの名無しさん:02/04/21 02:16
>>88
delgeteを言語仕様に取り込んでいる言語もあるね。

Javaでそのように記述するのは言語仕様なんだから、諦めれ。
関数コールのネストが深くなるのは、オブジェクト指向プログラミング
のメリットと引き換えになっているコストだから、気にすんな。

Swingなんか使っていると、大抵イベントディスパッチスレッドは
フレームスタック長15〜20までいってるよ。

90 :デフォルトの名無しさん:02/04/21 02:23
じゃヴぁが糞なのは
多重継承じゃなくってdelegateがないことだな。

91 :デフォルトの名無しさん:02/04/21 02:30
>>89
delegateねー。いいねーあれ。
でも名前が違うと結局委譲用のコード書かなきゃいけない。
かなしー

92 :デフォルトの名無しさん:02/04/21 02:36
>>91
あんまり委譲専用メソッドが沢山になって、それらが結局同じオブジェクトへ委譲
しているだけだったら、それをコールしているほうのオブジェクトに委譲先オブジ
ェクトの参照を渡してしまって、コールしているメソッドはその参照を使って
直接そのメソッドをよんでもらうようにして、綺麗さっぱり委譲専用メソッドを削除
する方法も、あるにはある。但し、クラス設計上の所有関係を破壊する可能性があるの
で気をつけれ。やりすぎると相互参照関係がぐちゃぐちゃになる。

93 :デフォルトの名無しさん:02/04/21 02:52
>>92
結局、この世ってむずかしー
という、つまんないオチになっちゃうんですかねー

94 :デフォルトの名無しさん:02/04/21 02:54
>>93
そうそう。責任たらいまわししたところで、結局誰かが
責任とって作業しなければ、何も動かないということ。

ところがみずぽの連中とか、政治家とか、ウチの上司どもとか…

95 :デフォルトの名無しさん:02/04/21 06:58
Javaは委譲のコードを大量に書かなくちゃならんからクソだわ。

96 :デフォルトの名無しさん:02/04/21 07:20
全てstaticで解決。っと。

97 :デフォルトの名無しさん:02/04/21 08:22
pythonってどうなんですかね?
オブジェクト指向言語的に。


98 :デフォルトの名無しさん:02/04/21 09:11
>95
でもそういうのはIDEが支援してくれるならそれでOKとは思う。refactorツール
なんかであったような。

99 :デフォルトの名無しさん:02/04/21 10:34
>>96
アホー。

100 :デフォルトの名無しさん:02/04/21 10:36
100げとずざー

101 :デフォルトの名無しさん:02/04/23 00:56
それは設計が悪い、は設計が悪いスレッドでも立ててやっとくれ。

102 :デフォルトの名無しさん:02/04/23 01:21
話は戻るが、>>1はなんでテストに継承を使おうと思うわけ?
ていうか、普通にJava使ってたら、継承なんか滅多にしないと思うんだが。


山ほどinterface使うけど。楽なのよ。型と実装を分離すんの。

103 :デフォルトの名無しさん:02/04/23 01:28
て言うか5分経ってもスレ一覧がピクリとも動かないこの板って・・・

104 :デフォルトの名無しさん:02/04/23 01:31
>>103
何か?
つかsageが多いって話もあるかと。

105 :デフォルトの名無しさん:02/04/23 02:04
ほんとjava糞だわ。

106 :デフォルトの名無しさん:02/04/23 02:17
>>99
なんで?

107 :102:02/04/23 20:22
マジな話、>>1は多重継承を使って、
どうやってprivateメンバのテストをするつもりだったんだろう・・・
ていうかそもそも、テストするクラス全部を継承すること自体
C++でも想像できん…

108 :デフォルトの名無しさん:02/04/23 23:07
>実装を継承したい場合→出来る限りコンポジションにしろ。

最初に継承を知ったとき、これは便利だー!と思ったけど、結局これなんだよね・・


109 :デフォルトの名無しさん:02/04/24 02:55
>>108
実装継承をコピペの代わりに使うと、パッと見無駄コードが簡単に減らせて
よいような気がするけど、無考えにそれやるとあとでかえって大変なんだよね。

オブジェクト指向プログラミングでは、オブジェクト指向を全うする為に
コード量が増えるのは、肯定しなけりゃならないのかな。
(もしかしておいらがC++系統に染まってるだけかな?)

それをしないですむようなシンタックスシュガーが、delegeteだったり
するわけだねー。

110 :デフォルトの名無しさん:02/04/24 02:58
template じゃダメかなぁ?

111 :デフォルトの名無しさん:02/04/24 03:01
>コード量が増えるのは、肯定しなけりゃならないのかな。
ちなみに、戦場スレでは、局所的にコードは増えるが、全体では減る、って
いう意見が出てたようで。

112 :デフォルトの名無しさん:02/04/24 03:03
delegeteってナンダ?
サンプルコード書いてみよ


113 :デフォルトの名無しさん:02/04/24 03:07
>>112
Javaにはないです。

114 :デフォルトの名無しさん:02/04/24 03:08
>>113
なくてもいいから、てきとーにかいて

115 :デフォルトの名無しさん:02/04/24 03:10
>>114
無茶言うな(藁

116 :こりゃこりゃ:02/04/24 03:25
Javaに対する不平不満は、もともと期待し過ぎてることにあるぜ。
あれは最初から、完全なオブジェクト指向言語を目指していなかった。
もともと、SUNのジェームスゴスリングのグループが実験に用いていた
C++があまりにも使いにくかったので、あれから複雑な機能を省いて
C++−−と呼んでいたものが起源だ。その後に改良を得て、内部構造
はLispで構文的にはCのプログラマー向けにできている。
この話はSUN本社の関係者から聞いたが、本当だと思う。

もともと不完全なオブジェクト指向言語で、便利なライブラリを増やす
ことで多機能を実現しようとした比較的単純な言語だと思えば、なかなか
ものだと見えるが、どうだろう?
ただし、売り物にされている中間コードの生成?とやらは、どうも今の
ところ中途半端なものになってるか? まあ、これは業界の政治的な
問題かな。


117 :デフォルトの名無しさん:02/04/24 03:37
JavaがC向け?
ハッおかしな話だ。
あんな配列の確保の仕方ねーよ

118 :デフォルトの名無しさん:02/04/24 09:24
>あれから複雑な機能を省いて
何を省いたか列挙してみなよ

>もともと不完全なオブジェクト指向言語で
どこが不完全なんだ?

>今のところ中途半端なものになってるか?
どこが?

前半は比較的正しいけど、
後半は・・・プ

119 :デフォルトの名無しさん:02/04/24 10:47
>118 どーでもいいが建設的な情報が1bitもないぞ。
お前はただ揚げ足とりたいだけなんとちゃうかと
一時間といわず問い詰めたいぞ。

120 :デフォルトの名無しさん:02/04/24 11:10
私の大学(情報工学科)では 3年で Java を学びます。
何故 3 年で C++ でなく、Java を学ぶのかと聞くと、「オブシェクト指向
プログラミングを学ぶため、そして Java にはポインタがないから分かりやすい」
という答えがかえってきました。
ポインタがないことは本当に Java の利点なのでしょうか?

121 :デフォルトの名無しさん:02/04/24 11:18
チンポがない女性は包茎でなやまないでしょ

122 :デフォルトの名無しさん:02/04/24 11:32
>>120
すくなくともCみたいにメモリ破壊のバグで頭かかえることはないよ。

ただし、メモリ破壊を起こすような
キケンな操作を制限されてはいるが
ポインタの相当品ならあるぞ。(だからツリーもリンクリストも作れる)

それをなんと呼ぶかで毎回くだらない論争が起きるが
言語仕様書の用語定義の問題でしかない。(と最初に釘をさしておく)

123 :デフォルトの名無しさん:02/04/24 13:04
>>120
「利点」という言い方がイヤなら
「特徴」と言い換えれば納得しますか?

124 :デフォルトの名無しさん:02/04/24 14:33
やっぱリフレクション無いからC++糞だわ。

複数のテストメソッドをいっぺんにテストしたいんだけど、
リフレクションが無いからテストメソッドの自動登録ができねーよ。
メソッド関数ポインタを使わないテストの受け渡しができねーんだよ。
テスト実行元にテストメソッド呼び出しつくるのは嫌なんだよ。
リフレクションがあればコンストラクタ渡しのみでスマートにできるのによ。糞C++が。

とか言ってみるテスト。


125 :デフォルトの名無しさん:02/04/24 15:51
リフレクションってな〜に?

って、ああアフォJavaの機能か。
スクリプト言語はPerl以外使ったこと無いから知らないねぇ(w

126 :デフォルトの名無しさん:02/04/24 15:56
適材適所という言葉を理解できない奴はプログラマやめろ

127 :デフォルトの名無しさん:02/04/24 16:01
Javaってどういう場面で適材なのですか〜
無知は漏れに教えてくださーい
答えられそうもなさげだけど(プ


128 :デフォルトの名無しさん:02/04/24 16:02
納得のいくようにお願いしますよ

129 :デフォルトの名無しさん:02/04/24 16:08
> とか言ってみるテスト。

このフレーズ何なんだろうね。最近真似てる奴多いけど。反論されたくないっ
てことか。。。?


130 :デフォルトの名無しさん:02/04/24 16:13
>120
ポインタがないと言うより、オブジェクトの実体を表す変数とポインタ変数の
区別をしなくてすむからでしょ。教えるには楽だよね。


131 :デフォルトの名無しさん:02/04/24 16:15
>124
あんまり知らんけど、C++でもRTTIつかえるっしょ?


132 :デフォルトの名無しさん:02/04/24 16:32
あーらら
結局このざまかよ
さっさと氏ね>>126

133 :デフォルトの名無しさん:02/04/24 16:54
厨房レベル上昇中。

134 :デフォルトの名無しさん:02/04/24 16:59
ことム板においては連続で書き込みまくってる奴のほうが
 仕事してない→ヒッキー→社会不適合者→ごみ
と思われる罠(w

135 :デフォルトの名無しさん:02/04/24 19:27
で。
>>1はいつになったら出てくるの?
継承使ってどうやってprivateメンバのテストするって?

136 :デフォルトの名無しさん:02/04/24 20:07
Javaは自分の厨房っぷりを見せるのに便利です
適材適所とはそういうことです

マトモな人は(以下略

137 :デフォルトの名無しさん:02/04/24 20:09
多重継承は犯罪です

138 :デフォルトの名無しさん:02/04/24 20:15
BoAたん>>>Java
(;´Д`)ハァハァー


139 :デフォルトの名無しさん:02/04/24 20:18
Javaは多重継承できないんだっけ?

140 :デフォルトの名無しさん:02/04/24 21:15
>>131
C++のRTTIは型キャストと型名取得にしか使えんです。微妙に役立たず。
いや、キャストはそれはそれで有用なんだけどね。もっとこう・・・なんていうか。
>>129
たぶん反論を予期していて弱気になってる感じ?断言を避けるのと似てる。

141 :そりゃそうだ:02/04/24 22:50
Javaがポインタが無いから分かりやすいというのはプログラム初心者にとって
本当かもしれんが、Javaの継承の機能などは、ありゃ結局はCのポインタじゃ
ないのか、という人が多い。
オブジェクト指向というものには、最初から明確な定義などないから、完全も
不完全もないと思う。Javaのそれが、中途半端なものなのは確かだよ。
俺はSmalltalkを使ったことあるけど、あれは習得に時間がかかり過ぎて困った。
完全なるオブジェクト指向の言語がいいとは限らんだろう。Rubyなどは、
機能的には完全だと言われているが、構文は手続き型に近い。
Smalltalkにも最初は多重継承機能があったが、問題が多くて無くした
そうだぜ。あの機能は、問題があるようだ。Rubyでも実装されていない。
まあ、それにしても、Javaは世間に多い糞言語の1つなのは本当かもしれん。
でもまあ、使う用途が多いのと、動く環境が多いだけでも、現状ではいいものだと
思うぜ。世間一般に使われている言語なんて、糞だらけだじゃないのか?


142 :デフォルトの名無しさん:02/04/24 23:19
>Javaの継承の機能などは、ありゃ結局はCのポインタじゃ
>ないのか、という人が多い。

お前だけ。


143 :デフォルトの名無しさん:02/04/24 23:20
>>141
文章の脈絡のなさよりもさることながら、
小話だけ半角で他が全角なのは気になった。

それはさておき
>Javaの継承の機能などは、ありゃ結局はCのポインタじゃないのか
継承=ポインタ? それは聞いたことがない。
参照変数を「(Cの)ポインタだ!」という人はいるが、
とりあえずVMの仕様書を10回朗読しろって感じ。

>世間一般に使われている言語なんて、糞だらけだじゃないのか
世間一般に使われていない、糞じゃない言語を教えてくれ。



あ、ちなみにJavaが完全なオブジェクト指向じゃないって
言われる所以は、もちろんプリミティブ型の存在ね。
小話の極端な文法はちょっと…という教訓に基づく妥協策みたいなもんだ。


144 :143:02/04/24 23:23
ふと思ったが、
>参照変数を「(Cの)ポインタだ!」という人
ってのは、C言語を知らない人が言ってる可能性もある罠。

145 :デフォルトの名無しさん:02/04/24 23:33
> 世間一般に使われていない、糞じゃない言語を教えてくれ。

DelphiとRubyを知らないのか?

146 :デフォルトの名無しさん:02/04/24 23:41
>145
Delphiはオブジェクト指向機能もあるが、
どっちかというと糞言語ですが、なにか?
C/C++の方が(出来ない奴にとって。要するに大部分の人間にとって)糞になり得るから
陰に隠れているだけで、別段Delphiが優れているわけではない。

Delphiというか、ObjectPascalね。

147 :デフォルトの名無しさん:02/04/24 23:53
>>143
Cのポインタではないけれど、NullPointerExceptionというのはあるのよね

148 :デフォルトの名無しさん:02/04/24 23:54
オブジェクト指向そのものが、完璧な思想じゃないからな。
ちょっと使えないからってクソ呼ばわりしてると、みんなクソ。
でも昔はクソだったN-BASICも今では可愛いもんだ。
エージェント指向なんつーのが台頭してきたら、
C++もDelphiも可愛く見えることだろう。

特に主張なしスマソ

149 :デフォルトの名無しさん:02/04/25 00:44
Eiffelは多重継承使っても問題ないけど。

150 :デフォルトの名無しさん:02/04/25 00:45
実は糞なのは使う側の人間という罠。

151 :デフォルトの名無しさん:02/04/25 00:51
その糞に使えてこそ優良な言語

152 :デフォルトの名無しさん:02/04/25 00:53
CDプレイヤに向かって「映画見れねーじゃねえかこの糞!」
というのは馬鹿のやることだよ。

153 :デフォルトの名無しさん:02/04/25 00:59
>>152
別に、CDプレイヤに向かって「映画見れねーじゃねえかこの糞!」と言うのはかまわんと思う。
でも、「CDプレイヤは映画見れねーから糞だ!」と書き散らすのはアフォ。


154 :デフォルトの名無しさん:02/04/25 02:01
Cのポインタと、Javaの参照をちゃんと理解すれば、
比較するとどーだとか言う必要がなくなるのに。

155 :デフォルトの名無しさん:02/04/25 02:26
多重継承なんて出来たらJavaなんかとっくにやめてるよ

156 :デフォルトの名無しさん:02/04/25 02:53
映画まで行くと行き過ぎな気がするな。
「このCDプレイヤはCD-TEXTに対応してないから糞」というくらいだと思う。

157 :デフォルトの名無しさん:02/04/25 03:12
実はDVDプレーヤに「リージョンコードクラックできないから糞」といってるのかも。

158 :152:02/04/25 08:02
>>157
あまりにうまい。

159 :デフォルトの名無しさん:02/04/25 19:14
>>1
いい加減出てきてどうやって継承でprivate以下略

160 :デフォルトの名無しさん:02/04/29 18:04
>>159 同意。

161 :デフォルトの名無しさん:02/04/29 18:15
javaはC系の言語ではありません。

162 :デフォルトの名無しさん:02/04/29 18:17
>>1
おとうさん・・・
時代はかわったのよ・・

163 :デフォルトの名無しさん:02/04/29 18:39
javaが糞というのは紛れもない事実だからいいとして、
糞を踏まないようにするにはどうすればいいかを考えればいい
ただし、先人がいろいろ考えてくれてるから、車輪の再発明にならぬようにな。

164 :デフォルトの名無しさん:02/04/29 19:12
>>163
目くそ、鼻くそを笑うってゆー奴ですか?

165 :デフォルトの名無しさん:02/04/29 23:09
理想論ばっかり言ってると一生冷や飯食いだぞ(冷笑

166 :デフォルトの名無しさん:02/04/30 07:05
もし、Itanium?とかUltra Sparc II?みたいに64ビットCPUが
主流になっても、JAVAのINTは32ビットなのだろうか?


167 :デフォルトの名無しさん:02/04/30 07:11
>>1が多重継承を使って何したいのか知らんが
インターフェースではだめなのか?
インターフェースをうまく使っている人って
Java暦長いやつでもあんまりいないんだよな

168 :デフォルトの名無しさん:02/04/30 09:34
>>165

漏れの知り合いに熱いご飯が食べられなくて、炊き立てのご飯をわざわざ冷やして
食べてるのが居るんですけど。
いや、比喩でなくてマジなんですよ。

169 : :02/04/30 11:14
>>166
64bit sparc用のCコンパイラでもintは4byte

そもそもCとかで型の大きさを意識した移植性のないプログラムが
多すぎるのを反省してjavaは大きさを固定で決めたんだろうから
そこは絶対変わらんと思う。


170 :デフォルトの名無しさん:02/04/30 12:58
むしろ、C/C++ の64ビット整数の名称の方をさっさと統一して欲しいかも。

171 :デフォルトの名無しさん:02/04/30 16:30
統一だったらint64_tしかねーじゃん

172 :デフォルトの名無しさん:02/04/30 22:31
int64_tの_tってーのが醜いなー
int64に統一できんのけ?

173 :デフォルトの名無しさん:02/05/01 01:17
size_t とか time_t とか div_t と同じノリだろ。命名について深く考えちゃいかん。

174 :デフォルトの名無しさん:02/05/01 08:20
[size_t とか ]
俺も最初はまいったね
こんな命名自分でよく書いてるから
標準のやつだなんて一見わかんなかったよ

175 :デフォルトの名無しさん:02/05/01 09:20
んじゃこれからは std::size_t って書く?一見して標準だとわかり

176 :デフォルトの名無しさん:02/05/01 09:34
いえ、僕の命名規則を変えます
「size~t」なんかどうでしょう?

177 :デフォルトの名無しさん:02/05/01 10:07
>>172
ほんとに int64 でいいのか?
128bitになったら(なるのか?) int128 ですか…
それもいいかもしんない。でも、それだったら
int16 とか int32 とかもちゃんと欲しいな。

char8 とか char6 とか増えちゃったりして、
コンパイラ作る人は大変かもね。

178 :デフォルトの名無しさん:02/05/01 10:15
>>177
わかってなさそうなので一応言っておくと、int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t は C99 で正式に採用されてるよん。
INT8_MAX, INT8_MIX とか、printf 用に PRId8, PRId16 とかもあり(詳しくは自分で調べれ)。

ってここはjavaスレ。スレ汚しごめ。

179 :デフォルトの名無しさん:02/05/01 10:26
>>169
と、すると
今後、JAVAは益々動作が愚鈍になっていくと考えてよろしいか?

180 :デフォルトの名無しさん:02/05/01 11:14
>>179
バス周りや OS の 64bit 対応とアプリケーションと 32/64bit 値の
扱いはそんな単純なものじゃない。ぶっちゃけ話、大して変わらんよ。

181 :デフォルトの名無しさん:02/05/05 12:36
やっぱりクラス定義の後にセミコロン無いから糞だわ

182 :デフォルトの名無しさん:02/05/05 13:05
>>181
つけても通るよ。
無知だな。

183 :181:02/05/05 13:11
ガ━ン
無知だった(;;)
それならそうと入門書に書いてくれればいいのに・・・(;;)

184 :デフォルトの名無しさん:02/05/05 13:58
GET />>181/肛門/index.html /HTTP1.0\r\n\r\n

185 :デフォルトの名無しさん:02/05/05 15:58
参照で渡されたStringに文字を入れて返すプログラムを組んでみれば?
あんな勝手な真似をするポインタなんてねえ・・・。

186 :デフォルトの名無しさん:02/05/05 16:05
大した問題じゃねえな。

187 :デフォルトの名無しさん:02/05/05 21:41
マクロが使えないから(以下略

188 :2以降を読まずにカキコ:02/05/05 21:51
>>1
Interface じゃだめなの?


189 :デフォルトの名無しさん:02/05/05 23:01
VM用にコンパイルできたら、言語はなんでもいいような気が…

190 :デフォルトの名無しさん:02/05/06 00:01
>>188
彼は行き当たりばったりプログラマですので。

191 :デフォルトの名無しさん:02/05/06 00:14
>>188
話がどうどう巡りするだけだから止めれ。(w
もしくはちゃんと読めれ。

192 :デフォルトの名無しさん:02/05/06 00:19
javaって糞だけどまあいいほうなんじゃないの?

193 :デフォルトの名無しさん:02/05/06 00:38
>>192
糞なんて言うなよ、下品だな。
ちゃんとウンチって言え。

194 :デフォルトの名無しさん:02/05/06 00:49
javaって便だけどまあいいほうなんじゃないの?

195 :デフォルトの名無しさん:02/05/06 02:49
>>191
ちゃんと読んだ。
で、interfaceじゃダメなの?
(どこにも答なかったと思うが。)

196 :デフォルトの名無しさん:02/05/06 03:01
それでどーやってテストw(以下略)

197 :デフォルトの名無しさん:02/05/06 12:57
javaって下痢便だけどまあいいほうなんじゃないの?

198 :デフォルトの名無しさん:02/05/06 13:50
AspectJじゃ駄目?


199 :デフォルトの名無しさん:02/05/06 16:22
オブジェクト指向についていけない人間にはC++の引きずる泥臭い部分が
必要なんだ! という主張かな?>1

200 :しゃあ:02/05/06 17:24
ええい!愚Java房ども!
Javaは糞だといういことが何故わからんのだ!!

201 :デフォルトの名無しさん:02/05/06 17:55
>>200
だんだんレベル下がってきてませんか?

202 :デフォルトの名無しさん:02/05/06 21:21
こういう「受け皿スレ」がないと本家スレが荒れるので・・・

203 :デフォルトの名無しさん:02/05/06 21:38
ここは隔離病棟かよ!

204 :デフォルトの名無しさん:02/05/06 22:20
javacの親切なエラー出力になれきって
もう他の言語には戻れません。

205 :デフォルトの名無しさん:02/05/06 23:26
1.3になってコンパイラ書き直し(よってエラーメッセージも書きなおし)で、非常に
意味不明なエラーメッセージが増えてますが何か?
あ、そういう皮肉か

206 :デフォルトの名無しさん:02/05/07 01:15
>202
本家スレって?

207 :デフォルトの名無しさん:02/05/07 02:08
>>206
オマエラが行くから言わない

208 :デフォルトの名無しさん:02/05/07 03:56
バイトコードって?

209 :デフォルトの名無しさん:02/05/07 04:06
>>208
俺の代わりにバイトしてくれるコード

210 :デフォルトの名無しさん:02/05/07 04:20
C#もJavaも、お互いをけなしてばかりじゃなくて、相手に負けないような改良をすることに集中してほしいYO!
C#は後発だから一歩有利か、次はJavaの巻き返しに期待するYO!

211 :デフォルトの名無しさん:02/05/07 04:29
貶し合いをしてる連中は言語そのものを改良する技術も権限も持ってないけどな。
ああ、Sunは別か(藁


212 :デフォルトの名無しさん:02/05/07 08:39
さんざ、あんなんOOじゃねぇといわれたC++のtempleteもJavaやC#にも取り入れられるようだし、
JavaやC#も10年もてばC++真っ青な混沌仕様になってそうだが。

213 :デフォルトの名無しさん:02/05/07 09:06
Java や C# は10年持つ、という仮定をするところを見ると
Java とか C# の擁護派ですか?

214 :デフォルトの名無しさん:02/05/07 10:01
213の脳のエントロピーは低いのか高いのか

215 :デフォルトの名無しさん:02/05/07 17:52
JavaでのGenericsの解説ページって、必ずCollectionクラスを持ち出して
「キャストがうざい」としか書いてないんだけど、
結局そういう解説ページは、Genericsって言いたいだけで利用方法や
本質を知らない馬鹿しか書いてないってことですか?

216 :デフォルトの名無しさん:02/05/07 18:19
はい、そうです。

217 :デフォルトの名無しさん:02/05/07 20:12
>>212

javaはもう十分すびるぐらい混沌としてると思うが?

io、nio。

もうね、アホかと。バカか略

218 :デフォルトの名無しさん:02/05/07 20:21
>十分すびる
ちょっとワラタヨ

219 :デフォルトの名無しさん:02/05/07 20:21
 

220 :デフォルトの名無しさん:02/05/07 20:23
「ら」を打ちそびれた…

221 :217>>219:02/05/07 20:23
  

222 :デフォルトの名無しさん:02/05/07 20:25
でもさ io も nio も C++ の iostream に比べれば(以下略)

223 :デフォルトの名無しさん:02/05/07 20:35
java.nio.糞スレ

224 :デフォルトの名無しさん:02/05/07 22:46
DynamicProxyAPIって何に使うの?


225 :デフォルトの名無しさん:02/05/07 23:17
>>224
java.lang.reflect.Proxy のこと?

どんなInterfaceも(コンパイルし直さずに)真似できるから、
GUIビルダツールなんか作るには最適。

226 :224:02/05/07 23:19
なるへそ。コンパイルしなおさずに、がミソですな。

227 :デフォルトの名無しさん:02/05/07 23:27
なんだかC++とJavaってナイフと便利バサミって感じ。

228 :デフォルトの名無しさん:02/05/07 23:49
ナイフにしては良く切れすぎる。
うっかりOSごと斬り捌くし。

229 :デフォルトの名無しさん:02/05/07 23:58
C++ → 斬鉄剣
java → 包丁

230 :デフォルトの名無しさん:02/05/08 00:11
>>229
つまり、JAVAでは蒟蒻が切れると・・・

231 :デフォルトの名無しさん:02/05/08 00:18
>>230
こんにゃく脳みそのミーハー顧客が切れます。
納品時に別の意味で切れます。二度美味しい。

232 :デフォルトの名無しさん:02/05/08 00:25
よくわからんのだが、>>1はテストすべきClassを全部継承した
テスト用のClassが作りたいのか?

privateメンバは外からアクセスできん
      ↓
継承したら見えるようになる
      ↓
全部継承できたら(゚Д゚)ウマー

という感じ?
やめて欲しいのだが。

233 :デフォルトの名無しさん:02/05/08 00:49
>>232
全くだな。そんな糞な方法取らなきゃデバッグもできんのかね。
1のアフォが。

234 :デフォルトの名無しさん:02/05/08 01:19
Javaがクソかどうかは置いておくとして、>>1がクソということには異論あるまい。

235 ::02/05/08 01:30
>>234
別に思わない

236 :デフォルトの名無しさん:02/05/08 01:54
>>235
返事になってないぞ(藁

「異論はとくに思いつかない」ってことか?

237 :デフォルトの名無しさん:02/05/08 02:13
javaは糞だって。C++ユーザならやってみてよ。

238 :デフォルトの名無しさん:02/05/08 02:15
なにを?

239 :デフォルトの名無しさん:02/05/08 02:34
AspectJ使え。


240 :デフォルトの名無しさん:02/05/08 02:44
ま、とりあえず、
VC++,Java,VB+(C#?)が使えりゃカンペキにメシが食えるんだ

それくらいは文句言わずに使え


241 :デフォルトの名無しさん:02/05/08 02:49
クラスを変態的に使うのは止めましょう。
>>1が目指してるのは全てのクラスが一つになったごった煮みたいな
シロモノと思われ。
Basic感覚でしか組めないアフォがクラスを極めると往々にして
そういう使い方をします。
外道です。


242 :デフォルトの名無しさん:02/05/08 08:16
Cでもいるよナー
へッダ1つにしちゃうヤツ

243 :デフォルトの名無しさん:02/05/08 13:25
class.FOO::bar()
とかが大量発生しそうでいやーんな予感。


244 :デフォルトの名無しさん:02/05/08 13:29
OOに慣れすぎた俺からすると1が何をしたいのか良く分からんよ。
単純に包含しちゃあいかんのかと。

245 :デフォルトの名無しさん:02/05/08 13:55
>複数のクラスを中身いじらずにいっぺんにテストしたいんだけど、

この発想が
極めて 1 のDQN 振りを物語ってると思う

246 :デフォルトの名無しさん:02/05/08 14:01
実際に1のような方法でテストをしたら実環境で問題を起こすのは
火を見るより明らかなんでは?

247 :定期的レス:02/05/08 19:46
で、結局>>1は継承を使ってどうやってprivate以下略

248 :デフォルトの名無しさん:02/05/08 19:51
結論:DQNによる糞スレ

249 :デフォルトの名無しさん:02/05/08 20:05
同じ質問を>>232-233に略

250 :デフォルトの名無しさん:02/05/08 22:45
Ruby!
と叫んだところで、Rubyにも多重継承無いんだけど、
Ruby厨って何がしたいの?

ついでに、Rubyにはprivateだろうがアクセスできる破壊的な方法が存在する。


251 :デフォルトの名無しさん:02/05/08 22:56
>>250
JavaだってあるYO!

252 :デフォルトの名無しさん:02/05/08 23:00
ループが始まったか。

253 :デフォルトの名無しさん:02/05/08 23:27
じゃあそろそろ結論出します
java → 糞だけどGUIとかネットワークところだけうまー
てことでいいですか?

254 :デフォルトの名無しさん:02/05/08 23:35
Rubyは多重継承は複雑さの源であるという見地から、意図的に多重継承を持っていませんが、モジュールを使ってクラス階層を横断して実装を共有できます。この機能を"Mix-in"と呼びます。

255 :デフォルトの名無しさん:02/05/08 23:39
JavaはGUIこそがクソだと思うが

256 :デフォルトの名無しさん:02/05/08 23:39
mix-inてよくわからないんだが、
アップキャストが不可能な継承と考えていいの?

257 :デフォルトの名無しさん:02/05/08 23:40
C#はGUIすら標準ではないが。

258 :デフォルトの名無しさん:02/05/08 23:48
>>256
mix-inってのは「実体を持つ主役じゃなくて、修飾のために付け加えるもの」
くらいの意味。元はFlavorsというLisp MachineのOOシステムの用語。

Flavorsとmix-inってのは、好きな香りと混ぜ物が選べるアイスクリーム屋から
とった洒落だったが(ObjectにあたるのはVanillaFlavorだった)Rubyのは
洒落にも何にもなってないね。きっと無知な人が名付けたんだろう。

259 :デフォルトの名無しさん:02/05/09 00:00
>>258
モジュールをクラスに混ぜてるからMix-Inなんだよ(ぷ

260 :デフォルトの名無しさん:02/05/09 00:09
>>259
っていうかミックスインはオブジェクト指向における説明的用語で、
「もともとあった言葉」でしょ。
まつもと氏が思いついた言葉じゃないのでは。
ちなみにrubyでミックスインは
「継承」ではなくて「インクルード」される。
話題それてつまらぬ。すまぬ。

261 :デフォルトの名無しさん:02/05/09 01:12
>>253
javaのあの糞ネットワークのどこがウマーなの?

262 :253:02/05/09 01:21
すいません、実はjavaやったことないのれす・・・(p_q)

263 :デフォルトの名無しさん:02/05/09 01:26
blame blame blame ,,,,
unfortunately it is always the same behavior for people who can't handle something well.
that means a man who always blame something is ......

264 :デフォルトの名無しさん:02/05/09 02:19
>>260
誰が「mix-inが継承される」と書いたんだ?
誰が「mix-inを思いついたのはまつもとだ」と書いたんだ?


265 :デフォルトの名無しさん:02/05/09 02:40
ここは釣堀ですか?

266 :デフォルトの名無しさん:02/05/09 03:36
しったか君の保護施設です

267 :デフォルトの名無しさん:02/05/09 04:19
>>266
保護してくれよぉ

268 :デフォルトの名無しさん:02/05/09 18:35
>>267
では何か知った振りをしなさい。

269 :デフォルトの名無しさん:02/05/09 20:48
>>268
Javaでインターフェースの他重軽傷を行うと
幸せに慣れるから全てのクラスはjava.awt.Appletを
敬称すべきである。

270 :デフォルトの名無しさん:02/05/09 21:13
RMIActivation、燃えるぜ!
MulticastSocket使ってPersonalJiniもどき作成中。

271 :デフォルトの名無しさん:02/06/23 02:45
多重継承の利点がわからん

272 :デフォルトの名無しさん:02/07/01 12:34
ぐちゃぐちゃになってキャストが増えてコードが増えてテストも大変で
残業代増えてウハウハ

273 :シッタカ君:02/07/02 00:25
実はおれも多重継承の良さが分からん。クラスライブラリの基本的なクラスが
多重継承で上手くまとめられているときは「美しい・・・」と思うけど、
アプリケーションで下手に使うとGoto文みたいにならないのかが心配だ。直感だが。

274 :デフォルトの名無しさん:02/07/07 22:54
多重継承した方がわかりやすくなるケースもたまにあるだろ。

継承したものすべてを漏らさずドキュメント化してあれば
多重継承してようがなんだろうが、すっきりする。

手抜きをして基底クラスの解説を基底クラスのドキュメントへのポインタだけで
すましていると、使う側も混乱するし、メンテも難しくなる。


49 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)