質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%

Q&A

解決済

4回答

536閲覧

Javaのオブジェクト指向についてあまり理解できません。Scratchで例えて教えてください。

Raiteru_0628

総合スコア3

0グッド

0クリップ

投稿2024/11/16 13:42

実現したいこと

Java等のプログラミングでの「オブジェクト指向」を完全理解することです。

発生している問題・分からないこと

「オブジェクト指向」がいまいち理解ができません。
Scratchに例えて教えてください。
(例えば「メゾットはスクラッチでいうスクリプト(合ってるかわかりませんが)」など)

該当のソースコード

なし

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

調べても出てきませんでした。

補足

どなたかわかる方、回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jimbe

2024/11/16 16:47

学術的なコトを知りたいのでしたら(例えなどせず)単に「オブジェクト指向」の書籍を5~6冊も読んで理解すれば良いのではないでしょうか。 スクラッチを知りませんが、それがオブジェクト指向で無いのなら例えるのは無理があるでしょう。 『java を使えるようになりたいが java はオブジェクト指向だそうなのでそれを理解してから…』という流れを考えてのことでしたら、取り敢えずはオブジェクト指向なぞ意識しなくても動くモノは書けますので、"習うより慣れろ" でコードを書き始めたほうが早いと思います。
otn

2024/11/18 09:40

現状がどういう状態であるかによって、次にどうするのが良いかが違ってきます。 ・プログラミング自体ほとんど経験が無い ・オブジェクト指向でないプログラミングはそこそこできる。オブジェクト指向という言葉を知ったが、ネットで検索した程度で、具体的には何も勉強してにないので当然理解できていない ・オブジェクト指向についての本を3-5冊くらい読んだが、書いてあることが全く理解できない。 ・オブジェクト指向についての本を3-5冊くらい読んで、書いてあることは理解できるが、オブジェクト指向の理解に繋がってる気がしない などなど。
dodox86

2024/11/21 04:25

質問者さん、過去の複数の質問も含め、放置するのは止めましょう。
Raiteru_0628

2024/11/21 09:31

皆さんご回答ありがとうございます いろいろ参考になりました dodoxさん 、ご指摘ありがとうございます 受験生でして時間があまりなくて、後回しにしていました。でもこれではマナー違反ですね すみませんでした
otn

2024/11/21 13:37

受験生ということは高校生(か浪人生)ということですかね? であれば、「自分で書籍を読んで"ふむふむ"と理解できないようなことを、今、無理して学ぶことではない」というのが回答かと思います。 時間があればプログラミング以外も含めて沢山本を読むのが、知的基礎力を高めるには良いですが、受験勉強以外の時間がないのであれば、受験勉強もやり方次第では基礎力を高めるのは可能かと思います。
guest

回答4

0

ベストアンサー

各種言語のオブジェクト指向の取り入れ方は種々多様で、Javaのオブジェクト指向も独特なものがあるので、それを他の言語を使って説明するのは困難です。
また、質問者さんがどんなレベルで理解したいと思っているかもわかりませんし。

ちなみに、Scratchそのものもオブジェクト指向の言語です。
https://xtech.nikkei.com/it/article/COLUMN/20111019/371081/

スプライトはオブジェクトです。
Javaのclassに相当するものはユーザは扱えません。(内部では使っていそうです)
スプライトはイベントリスナーとそれに付随する動作の定義を持っています。
ファンクションはスプライトに付随するのでメソッドにあたりますね。

投稿2024/11/17 04:33

編集2024/11/17 11:38
TakaiY

総合スコア13687

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Raiteru_0628

2024/11/21 09:26

ありがとうございます!!
guest

0

そもそもが、オブジェクト指向には「ソフト開発が肥大化して大変、なんとかならんか~」というところで「こうやったら上手くいったみたい」というのをかき集めて成立したみたいなところがあって、ちょっとリクツでは言えない部分とか、一度苦労していないと理解出来ない部分なんてのがあるように思います。
つまり、Scratchでの喩えを求める人に「完全理解」できるようなシロモノではないし、「調べてでてきませんでした」な思考の人にはなおのこと(少なくとも共感は)難しいのではないか、などと思ってしまうのです。

とりあえず、私は、組み込みC10年のあとオブジェクト指向を囓り始めて「なんかこんなことかなぁ」と思えるまでに1年はかかりました。最初から「そういうもの」としてやるのならそんなにはかからないのかも知れませんが。

投稿2024/11/20 13:21

thkana

総合スコア7703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

0

オブジェクト指向自体は言語に関係ないように思うかもしれませんが、実際にはやはり言語ごとに使える機能が異なっていたりするので、Javaを使いたいならJavaを前提とした資料なり書籍を読むのが一番良いと思います。
概念として共通しているものもありますが、実際の運用=具体的な言語でのコーディングでは差異があります。
それからオブジェクト指向の完全理解はまず無理です。
仕事として10年以上プログラミングをしていますし、様々な書籍を読んできました。
いろいろな言語を触っていますが、それでも未だに完全理解したと自信を持って言えません。
そのくらい難しい物と考えています。

投稿2024/11/16 16:27

mingos

総合スコア4190

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

0

オブジェクト指向を理解したい場合、オブジェクト指向という言葉を使わないのが一番の近道だと思います。
そもそもオブジェクト指向とされている、オブジェクト指向を構成する要素はほとんどそれらに関連がなく、オブジェクト指向という言葉でひとくくりにする意味がまずありません。(ある意味、依存関係がなくテスト可能な文法であるともとらえられます)

プログラミングは処理を単純なレベルまで分割することが大事といわれがちですが、オブジェクト指向の説明はなぜか項目ごとに細分化されて説明されてません。
オブジェクト指向の何を理解したいのかというのがかなり重要です。

オブジェクト指向はオブジェクト指向の機能単体よりはオブジェクト指向のデザインパターンを理解することでより簡単に理解することが可能に思えます。

クラスはただの名前空間です。混乱することはありません。

クラスは型として使えます。
型として使えるのはおまけとしてポリモーフィズムとしての拡張性を担保できるためです。
(あるいは、ダックタイピングを除外するための名前空間としての役割ともとらえることもできる)

投稿2024/11/20 14:04

utm.

総合スコア278

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問