Размер видео: 1280 X 720853 X 480640 X 360
Показать панель управления
Автовоспроизведение
Автоповтор
(概要欄にも書きましたが、念のためこちらにも記載します)この動画の内容について、修正をさせてください。3-2後半(22:17~)の板書について、右側中央のsetScoreメソッド1行目の最後に【 { 】の記述が不足していました。誤った内容をお伝えしてしまいごめんなさい🙇♂指摘してくれた@majoreality3810 さん、ありがとうございました。
オブジェクト指向関連の動画はたくさんあるけどダントツで一番分かりやすい。もっと評価されるべき。
天さん、コメントありがとうございました!そう感じてもらえて嬉しいです!いろいろ試行錯誤して作った動画なので、より多くの人に見てもらえた良いなと思います。
菅原さんの動画で毎日勉強させて頂いております!数ヶ月前からプログラミングを使用した職業に転職したいと思い、書籍や動画、Webサイトなどで学習をしていましたが、何よりも菅原さんの解説動画が1番に分かりやすくて前よりも もっともっとプログラミングが好きになりました!まだまだ初心者で右も左も分からない様な状態ですが、こんなに前向きに勉強ができるのも菅原さんの動画のおかげだと思っております。基礎の基礎から理解できる様に作って頂いているおかげで、学習に対する不安や悩みが嘘のように解消されました。素晴らしい解説動画や励みのお言葉、いつも本当にありがとうございます!
茶トラ猫 てち三郎さん、THANKSコメントありがとうございました!この前2章が終わったところだと思いますが、もう3章も終わっちゃんですね😲3章はオブジェクト指向の導入で、難しいって感じる人が多いところです。このタイミングで「プログラミングが好きになった!」と思えたら、結構向いてるんじゃないかなと思いますよ👍そういうふうに感じてもらえて、僕も動画を作って良かったなーと感じました。こちらこそ、ありあとうございます!!次の4章は、入門講座で一番難しい内容です。ここを乗り越えられたら5・6章は比較的理解しやすいと思うので、焦らずじっくり頑張っていってください!
今までネットや本を読んでもしっくりきていませんでしたが、根本的でより厳密な理解(メモリ領域の確保、どこの領域にできるのか)ができたことで、ようやく考え方がわかりスッキリしました!仕事でコードを読み込むときにも一つ一つの意味がしっかりわかるようになると思います。本当にありがとうございます!!
ふくろうさん、THANKSコメントありがとうございました!プログラミングが「分かる」レベルにもいろいろありますが、コメント文から深くまで理解できている様子が伝わってきて僕も嬉しいです。メモリ領域の使われ方など深い部分には触れられていない教材も多いですが、こういうところまで理解できているかが強いエンジニアには求められると思います。ぜひ、今後のお仕事に活かしていってくださいね😄こちらこそ、嬉しいコメントをありがとうございました!!
一生のバイブルになるなぁ。ダントツでわかりやすいです。
KUROさん、コメントありがとうございました!そう思ってもらえて良かったです。オブジェクト指向の深い内容や例外処理、クラスライブラリ、webアプリ編の動画もあるので、ぜひ楽しく勉強していってください✨
研修で苦しんでいたのですがこの動画のおかげで救われました。ありがとうございます。
今Java研修を受けてるんですね。Javaはこの先実践的なレベルまで解説動画を作ってあるので、もしまた分からなくなったら戻ってきてください😄
わいもw
素晴らしい動画ありがとうございます!今26歳社会人でITに転職したくてJavasilver取得を目指しています。全くの素人なので理解がなかなか難しいですが11月に資格取得できるように頑張りたいと思います。
elfさん、コメントありがとうございました!最初は理解するのが難しい内容もあるかもしれませんが、分からないことよりも分かったことに目を向けて、焦らず楽しく勉強を進めていくのが良いのかなと思います。同じように未経験からJavaSilverできたという報告をたくさんもらっているので、ぜひ頑張ってください!
Java勉強の6日目)01:30:20菅原先生のアドバイス通り週末はちょっと内容を思い出すぐらいでしっかり休みました。今日は仕事の変動もあり、心が揺れてなかなか集中できず、staticまでは終わらせたかったですが、失敗しました。涙、再来週基本情報技術者試験なのでそれまでには毎日最低30分目標で少しづつでも進めて行きたいと思います!学習途中ちょいちょい出てくる先生の言葉で元気を勇気をもらっています。^^今日も講義ありがとうございました。
週末はしっかり休めたようで良かったです。仕事をしながらだと、勉強が思うように進まないときもありますよね。それなのに少しでもJavaに触れられたのなら、それだけで十分立派です!もし立ち止まっちゃう日があったとしても、余裕ができたらまた進みたいと思えるときがきますから。再来週は基本情報の試験を受けるみたいですし、無理せず一歩ずついきましょう!
Java勉強の5日目) 本日はあまり時間がなくて3章の復習と、3-5まで学習を進めました。しっかり講義をもう一回見て演習問題解けましたので、感覚を忘れないように明日も学習しようとおもいます!!講義ありがとうございます!
時間がなくてもしっかり学習を進められたなんてスゴイですね!ただ、頑張りすぎると勉強が嫌になってきちゃったりもするので、無理はしすぎないでくださいね。マラソンに給水や給食が欠かせないように、疲れる前に休むのが長く頑張り続けるコツです。
Taka 野良Java入門講座で楽しく勉強しています。分かりやすい説明ありがとうございます。せかチャンの動画でJava初歩から始めています。 Webアプリ、MySQLまで理解を深めていければと思っています。
Taka 野良さん、コメントありがとうございました!せかチャンの動画を見てもらえば、Javaを初歩からwebアプリ、DB処理まで体系的に学べます😄ぜひ自分のペースで、楽しく勉強を進めていってください!
動画ありがとうございます😊今までオブジェクトクラスを作る際、mainクラスしか作っておらず、戻り値等のプログラムを実行できませんでした。しかし、動画を通じてmainクラスとmainが記載されていないクラスを作る必要があることが分かり、オブジェクト指向を深く理解できました。ありがとうございます😭
K Oさん、コメントありがとうございました!オブジェクト指向デビュー、おめでとうございます!mainメソッドだけでもいろんなプログラムは作れますが、設計図クラスを利用できるようになると一気に視野が広がりますよね😄さらに継承やポリモフィズム、クラスライブラリへ進むとまた面白いので、ぜひK Oさんのペースでスキルアップしていってください!
初めまして。5月からJavaを学習し始めた30過ぎの者です。教材だけでは理解が難しい部分が多く色々と調べていたところ、こちらのチャンネルに辿り着きました。動画を何度か見させていただいているうちに、少しずつですが理解することが出来てきました。分かりやすい解説、本当にありがとうございます。授業ノートも活用させていただきたいと思います。m(__)m
tomoさん、初めまして。手持ちの教材とせかチャンの動画をあわせて使ってもらえれば、きっと理解が深まりやすいんじゃないかなと思います😄オブジェクト指向が分かるとJavaの世界が一気に広がるので、ぜひこれからも楽しく勉強していってください!
前1回この動画を見て、何となくわかった気がして黒本を進めました。(黒本は全然分かりませんでした笑)、しかしその後もう1回帰ってくると、めちゃくちゃ頭に入ってきました!!黒本の理解も一層深まりました!!最高の動画です!!
アイリス大山さん、コメントありがとうございました!もうオブジェクト指向まで進んでいて、黒本も何回か解けているようですし、勉強は順調みたいですね。そういえばJavaSilverを受験するのなら、合格ロードマップ動画を見てもらうことをオススメします。もしまだ見ていなければ、ぜひチェックしておいてください!→ ruclips.net/video/l2ne1CUPsbM/видео.html
コンストラクタが何なのかいまいち分からなかったのですが、この動画で理解できました。めちゃくちゃ分かりやすいです!!
nats natsさん、コメントありがとうございました!コンストラクタって分かりにくいですよね💦この動画で理解が深まったみたいで良かったです!
初心者でアイパス取ったのでみてみましたが、すげえわかりやすくて涙出ました。。ありがとうございます!
グレートバリアリーフさん、コメントありがとうございました!アイパスを取れたなら、これから基本情報やプログラミングなど、勉強の幅が広がっていきそうですね。分かりやすかったみたいで良かったです!
長くJavaの勉強は慣れていましたので本日3章復習と最後まで受講しました!基本情報技術者B試験で不合格だったのでJavaの勉強も欠かせず、両方あせらず一緒にやって行こうと思いました!本日も学習講座ありがとうございました。
基本情報技術者試験、お疲れさまでした!B試験は深い問題も出るので難しいですよね‥アルゴリズムの基本をしっかり理解できれば、B試験はもちろんプログラミングにも役立ちます。もし必要であれば、こちらの動画も見てみてください。▼はじめてのアルゴリズム講座ruclips.net/video/2fh8Pyq-Lc8/видео.html
@@SekaChan ありがとうございます。次の試験これをしっかり勉強して合格します!!
菅原さん、話が簡単で分かりやすい。ホワイトボードの字が綺麗!読みやすい! 難しい内容なのに簡単にわかる。偉い!素晴らしい!名先生、菅原先生! これからも配信つづけて下さい! Javaに対する認識が変わりました!
在原孫一朗さん、コメントありがとうございました!Javaに対する認識が変わったとありましたが、もし「わかる」「楽しい」っていう認識に変わっていたらとても嬉しいです✨「分かりやすい解説」を考えるのが好きなので、もっと分かりやすい、楽しいって感じてもらえるような動画を作っていけるように頑張ります!
Java勉強の4日目)本日は3-4まで学習しましたが、演習問題が解けなくて、明日講義をもう一度見てから復習して、あらためて挑戦したいと思います。前独学でやった時は講義を進むことしか考えなくて全然身についてなかったので今回はしっかりJavaを理解したいと思います!今日もありがとうございました。
4日目の勉強、お疲れさまでした!オブジェクト指向の導入部分(3-1~3-4)は入門講座のなかで特に重要なポイントの1つなので、焦らずじっくり取り組んでもらって良いと思います。「講義を進むことしか考えてない」と、たしかに身につきにくいですからね。ただ、いろんなサンプルに触れて慣れることで理解が進むケースもあるので、ある程度分かったら3-5以降に進んでもらうのもアリかなと思います。
研修でprogateのJavaをやってますが、初歩なのに一回でできないから向いてないと言われ、悔しくていろんな動画を探していて、こちらに辿りつきました。アホな私にもわかりやすくて涙が出ます。ありがとうございます。
オブジェクト指向を一回で理解するのは難しいと思います。それにprogateで分からなくて来ましたっていう人、他にも結構いるんですよね。なので、向いてないなんてことはないですよ。焦らず自分のペースで勉強していけば大丈夫です!
@@SekaChan ありがとうございます😭頑張ります!
めちゃくちゃわかりやすいです。。合間に出てくる言葉も胸に沁みます…今月IT業界に転職してきたので、これから勉強頑張ります。貴重な講義動画ありがとうございます。
IT業界に転職したばっかりなんですね。この業界は慣れるまでは覚えることが多くて大変かもしれません。周りのできる人達をみると焦っちゃうので、昨日の自分を超えるイメージで頑張っていってください!
今までで一番わかりやすかったです!!
ささささん、コメントありがとうございました!わかりやすいって感じてもらえて良かったです。Javaはこの先の内容もEclipseなどのツール系の動画も作ってあるので、興味があればいろいろ見てみてください😄
時々、正面を向いて下さるのでリアル授業を受けているようだ。
arte & altroさん、コメントありがとうございました!動画を見てくれる人たちがいるおかげで、僕もリアル授業をしている感覚でカメラに話しかけられるようになってきました✨
動画ありがとうございます。プログラミング初心者なのですが、「オブジェクト」と言う意味が今まで理解していなかったのですが、とても分かりやすかったです。チャンネル登録もしました!現在Javaを勉強しておりますが、業務で使えるようになるまでになれるよう頑張ります!!
Maggie_まぎーさん、コメント&チャンネル登録ありがとうございました!オブジェクト指向は慣れるまで難しいですよね。でもこの動画が理解できれば、基本の考え方はマスターできたと思って良いですよ👍Javaは入門講座と応用講座、webアプリ編、データベース編、さらにEclipseやSpringBootなどの動画も作ってあるので、必要に応じていろんなスキルを身につけてもらえます。ぜひ楽しく勉強していってください!
日本にいる外国人としてもめっちゃ理解しやすいです。
Thanksコメント、ありがとうございました!!僕の動画は説明もホワイトボードの記述も日本語ばかりなのに、それでも理解しやすいって感じてもらえて嬉しいです😄Javaはかなりハイレベルの内容まで動画を作ってあるので、ぜひ活用していってください!
めっちゃくちゃわかりやすいありがとうございます!?!!
6 Lryuさん、コメントありがとうございました!わかりやすいって感じてもらえて良かったです😄Javaはオブジェクト指向の応用編からwebアプリ編までひと通り動画を作ってあるので、ぜひスキルアップしていってください!
解説も丁寧、字もきれい!当方情報系の学生ですが、授業よりクオリティが高い気もします笑
そう感じてもらえて良かったです😄情報系の先生って、教えるのが好きな人と苦手な人に分かれる気がしますね。(僕が授業で習ったときはチンプンカンプンでした笑)
前提知識ありきでみたけどstaticとカプセル化の代入前処理とかの意図をしれてよかったー
うちゃさん、コメントありがとうございました!staticやカプセル化は意図や狙いまで理解できると、応用も利きやすいかなと思います。この動画が役立ったみたいで良かったです!
死ぬほど参考にしてます😭ありがたいです
mi ssさん、嬉しいコメントありがとうございます!動画を作った甲斐がありました✨この先の動画もあるので、mi ssさんのペースで勉強していってください!
ありがとうございます!
unknownさん、THANKSコメントありがとうございました!この動画が役に立ったのならとても嬉しいです。応援でお送り頂いた金額は、将来の視聴者さんのため(もっと良い動画を作ったりチャンネルを広めたりなど)に使わせてもらいたいと思っています✨これからもよろしくお願いします!
いいところ⑤ムダが無いのに必要なことはしっかり説明する
吉田雄一さん、こんにちは!いつもコメントありがとうございます😄動画をじっくり見てもらえていないと気付けないご意見で嬉しいです。たしかに、「これはムダかなぁ」と感じる説明は編集時にカットしていますね。ただ、淡白な動画になっちゃっている印象もあって、もう少し演出を加えたいなもと考えています✨
はじめまして菅原先生私は20年前に大学時代にjavaを習っていましたが当時は良く分からないまま講義を受けていました。その後職業が違い触れてこなかったのですが、どうしても基本情報技術者試験に受かるために午後対策本を購入して平行して勉強中です(旧試験4回・新試験1回受験済)午後アルゴリズム問題でどうしても落ちてしまう)あの頃とは変わりプログラミングしやすい環境も出来ているのと、どうしてもオブジェクト指向はイメージがし難いので菅原先生の講義を聞きたく拝聴しました。よろしくお願いいたします。いきなりプログラムを作れと言われても無理なので最初は写経になってしまってもよいのでしょうか・・・(実際にそうなっている・・・・・)
まきさん、コメントありがとうございました!僕も大学時代に初めてJavaを習いましたが、そのときはまったく分かりませんでしたね‥この動画は当時の自分でも分かるように基礎の基礎から説明しているので、ぜひ写経からスタートしてみてください。オブジェクト指向の理解につなげてもらえたら嬉しいです!オブジェクト指向とアルゴリズムの考えは別物なので、こちらの動画も見てもらうと試験対策に役立つかなと思います。▼アルゴリズム・フローチャート基礎講座ruclips.net/video/2fh8Pyq-Lc8/видео.html
interfaceで定義して、Implementsする(つまり関数method)にしないと確かに設計図クラスになる記述部分は、動作しませんね。結構実際にコードをうち込んで実行するとエディターが間違いを指摘してくれるので、勉強になります。
タダタカサトウさん、コメントありがとうございました。そうですね。実際にコードを打ち込みながらエラーと向き合う時間が一番理解が深まると思います。この動画が役に立ったようで良かったです✨
黒本にでてくるようなコードの問題を解説して頂けれるとめちゃくちゃ嬉しいです!!!
黒本の著者さんもRUclipsをされているので、こちらを見てもらうのがオススメですよー😄www.youtube.com/@java9521
@@SekaChan ありがとうございますただ、せかちゃん氏のほうが自分には理解しやすいです。。。
@@僕を忘れた頃に君を忘れられない そう思ってもらえて光栄です!同じようなリクエストが集まったら検討してみますね🍀
@@SekaChan ご検討のほど、何卒
オブジェクトの使い方のところで質問がありますclassStudentの8行目から名前と英語と数学の点数を出す処理が行われています。一方でclassStuSampleでも8行目から平均点を出す処理が行われています。なぜ2つの画面に分けて処理をし、画面に出すのかが動画を何周してもわかりません。また分ける基準なども教えていただきたいですよろしくお願いします
THANKSコメントありがとうございました!まず、画面に表示する System.out.println() は、プログラムのどこからでも呼び出して実行できます。2章までのサンプルのようにすべての処理をmainメソッド内に書くこともできますが、処理をまとめて別のクラスに抜き出すこともできるわけですね。そうやって作ったのが、サンプルの display() や setScore(~)、getAvg() です。そうするといろんなところから呼び出して利用できるようになり、3-1や3-2で解説したようなメリットがあります。「分ける基準」は特に決まっていませんが、再利用したいかどうかは1つの基準になるかなと思います。
1:37:06でstaticのメソッドを呼び出す時には,「オブジェクト.変数(メソッド)」ではなく「クラス.変数(メソッド)」と仰っていましたが、自分でコードを確認したところ「オブジェクト.変数(メソッド)」でもインスタンス化したものにはカウンタ変数は問題なく機能していました。staticの1番のポイントは「インスタンス化しなくても呼び出せる」という点なのですね。インスタンス化してもしなくても共通のものとしてあるという部分が大事だと。(認識間違えていたら教えてください!)
非常に助かります!何でいいねって1回しか押せないんだろう。。
的場康平さん、コメントありがとうございました!動画が役に立ったみたいで良かったです!コメントでそう伝えてもらえたことが、いいね何回分ものパワーになります💪
めちゃくちゃ分かりやすくて感動しました!ITスクールの方でもかなり説明が難しそうなところがすんなり理解できて目から鱗です。ありがとうございましたm(__)m
ぷにさん、コメントありがとうございました!たしかにここは説明が難しいところですね。オブジェクト指向が分かればいろいろと応用が利くので、この動画が理解につながって良かったです😄
上手く設計できるようにはどうしたらいいんだろう後から変えるときに、そんなことは想定してなかったとよくなる
VisualStudio開発環境下で、C#言語によりWindows GUIアプリの開発などの経験がありGUI部分は専用デザイナーにより楽に素早く開発出来ます。最近JAVAに興味をがあって、このチャンネルのお世話になっています。JAVA Eclipse 環境で同等の環境が構築できるようなのですが、環境構築方法、GUIアプリ開発講座などの動画を発信して頂ければ思い投稿しました。宜しくお願いします。
半田富次さん、コメントありがとうございました!GUIアプリの開発は作った成果が目に見えて分かるので、すごく面白いですよね😄WindowsのGUIアプリの開発講座については、他の視聴者さんからもリクエストが集まったら動画化を検討してみます。
わかりやすい動画ありがとうございます!すみません、24:28のところですが、setScoreメソッドの前半部分のなみかっこ忘れてます。
コメントありがとうございました!たしかにsetScoreメソッドの { を忘れてしまっていました。誤った情報をお伝えしてしまい申し訳ないです。取り急ぎ、動画内や概要欄に注釈を入れるなど対応をさせてもらいました。改めてご指摘ありがとうございました!
現在Javaを勉強している者です。とても分かりやすく、楽しく勉強させていただいております。【3-7】static【3-9】演習問題4のstaticで、display()のstaticメソッドを呼び出す部分での質問です。【3-7】では動画を見ながらだったため、オブジェクト名「stu1」→ クラス名「Student4」と変更しておりました。【3-9】演習問題4を解いた際に、「DriveCar4.java」の4.6.8行目のオブジェクト名「c1」「c2」「c3」を、クラス名「Car4」と変更をせずにコンパイル、実行をしてしまいました。コンパイル、実行は特に問題なく動作したため、解答を確認した際に間違っていたことに気が付きました。呼び出しの際は「クラス名.変数[メソッド]名」ということでしたが、「オブジェクト名.メソッド名」でも呼び出せてしまったのですが、こういったものと認識するしかないのでしょうか。本当は内部でこういった動きをしているんだよ。といったことあれば教えていただけると幸いです。
けんぴっぴさん、コメントありがとうございました。staticメソッドはクラスがもつメソッドなので、本来は「クラス名.メソッド名」の形で呼び出すべきですね😄ただ、メモリ内でオブジェクトとクラスの情報は紐づいているため、「オブジェクト名.メソッド名」で呼び出すことができる“ことも”あります。開発環境によってはコンパイル時に(推奨しない書き方という意味合いで)エラーになることもあるので、基本的にはクラス名から呼び出す書き方に慣れておけると良いですね。
@@SekaChan ご回答ありがとうございます。ほかの言語でも感じましたが、やはりできてしまうけど推奨しない。というのは多いですね。少しずつ難しくなっていますが使って慣れていきます!この度はありがとうございました。
1:43 こういう実際に現場で使用されるケースと乖離しすぎたサンプルコードって腐るほど参考書や解説サイトで見てきたけど、かえって分かりづらくするだけなんですよね。オープンソースプロジェクト等で実際に使われているコードを元に解説したほうがいいと思います。
すごいよかった!基礎的な数学の解説してるゆくイロスクールさんとコラボしてほしいです!!
あいあいさん、コメントありがとうございました!そろそろ誰かとコラボできたら良いなと思ってたので、コラボ先のリクエストはありがたいです😄
インスタンスフィールドの値を利用する時にthis.は付けなくても良いのでしょうか? また、接頭辞としてpublic などを付けなくても良いのでしょうか。動画を見てる途中ですが疑問に思いました。
sukeさん、コメントありがとうございました。この動画で扱っているプログラムでは、「this.」はつけなくても大丈夫です👍(次の応用編では「this.」が必要な場面が出てきます)「public」などのアクセス修飾子は、本来は付けるべきですね。どんな修飾子があるかやその使い分けについては、1:38:33~のカプセル化を参照してください。
質問1: なぜeclipseを使わないんですか?質問2: コードを書く時のキーボートの打ち方を教えてほしいです例n.name();の()を書いた右カーソルを押してから;なのかとか
tっgっfっぐさん、コメントありがとうございました。> 質問1eclipseを使うとコンテンツアシストやデバッグなどの機能が優れすぎていて、本質が分かっていなくてもプログラムが完成してしまうためです。視聴者さんにはJavaの文法や考え方をしっかり理解した上でツールを使いこなしてほしいという思いから、あえてシンプルなエディタのみで講座を進めています。> 質問2(質問の意味合いが分からない部分がありますが‥)この講座では左から右へと文字入力をしていて、カーソル移動などは特にしていないですね。
いつも分かりやすい動画ありがとうございます!44:52の所なのですが、引数なしのコンストラクタを用意するというのが口頭だけではよく分かりませんでした、、😢コードを書くとしたらどういう風にすれば良いということなのでしょうか??🙇♂️
さんかめはめさん、コメントありがとうございました。指定の時間はコンストラクタが出てくる前なのでどの部分の説明を指しているのかが分からなかったのですが、一般的に「引数なしのコンストラクタ」は-----クラス名(){ :}-----このようにして作ることができますね😄
@@SekaChan お忙しいところお答えいただきありがとうございます!色んな動画で質問をたくさんしてしまい申し訳ないです、、
record定義して、配列は多元にしても、一つにしたほうがよいのではないでしょうか?
驚くほど分かりやすかったです…ありがとうございます!(´▽`)
コメントありがとうございました!オブジェクト指向の導入は分かりにくいところなので、そう感じてもらえて良かったです😄
こんなレベルの動画を無料で見れるなんて。
西川なな実さん、コメントありがとうございました!そう感じてもらえて良かったです😄Java関連の動画は入門レベルから実践レベルまで幅広く作ってあるので、ぜひ必要なものを見ていってください!
毎日動画を視聴し、勉強させていただいています。ありがとうございます。一つ質問させてください。インスタンス化をするときですが、例題3-3では下記①のように記載していただいていると思います。①Student stu1 = new Student();ですが、下記②のように先頭の違うクラス名でインスタンス化する場合があるのでしょうか。また、どういう動きをするのか教えていただけると幸いです。②Teacher stu1 = new Student();
自己解決しました。ありがとうございます。これからも視聴続けます!
コメント&追伸ありがとうございました!自己解決できて良かったです。これからも一緒にがんばっていきましょう!
最後の演習問題について質問です。設計図クラスのcountのところだけにstaticを入れて、displayのところにstaticを入れておらず、実行のクラスでもc1.display, c2.display などクラス名ではなかったのですが、答えと全く同じようになりました。この場合はどういうことが起こっているのでしょうか?
ケン- calisthenicsさん、コメントありがとうございました。(「どういうことが起こっているのか?」という質問なので、アバウトな回答になってしまいますが‥)displayメソッドをstaticにしないときは、「インスタンス名.メソッド名」で呼び出すことができます。つまり、c1.display()などのような形で呼び出せることになります。今回の場合、この呼び出し方でも同じ結果になります。この問題で振り返ってほしいのは、「なぜstaticを入れるのか?」ですね。diplayメソッドの処理を踏まえると、このdisplayメソッドではstaticを(入れなくても動きますが)入れる方が適切です。それはなぜか?を考えてみましょう😄
@@SekaChan ご丁寧にありがとうございます!もう一度見直してみます!
c言語のように分割コンパイルが必要ないのは楽でいいですね。
たしかに、c言語のコンパイルって大変でしたよね。Javaのコンパイラはいろんな意味で優秀だなぁと個人的に感じてます。
JavaSilver取得のため、活用させていただいてます!演習問題のダウンロードファイルですが、3-9>Q にCar 3.javaの回答ファイルが入っておりネタバレ喰らいました笑修正しておいていただけると嬉しいです!使用PCはmacOS Monterey バージョン12.6.3です
saya icchiyさん、コメントありがとうございました!そして、本当にごめんなさい!!せっかく演習に取り組もうって思ってくれたのに、ネタバレしてしまうなんて最悪です‥確認しましたが、回答例のプログラムがQフォルダの中に入っちゃっていたんですね。ホントすみません🙏回答例を取り除いたデータを再アップしておきました。
何度もご質問してしまい申し訳ありません🙇♂️メソッドは菅原先生の説明だと初めてオブジェクト指向で出てきましたが、スッキリわかるjavaという教科書を読んでいるとオブジェクト指向ではなく、一つのテキスト?の中にメソッドの呼び出しをしており、かなり混乱しております。何か良い考え方は無いでしょうか??分かりにくい質問で申し訳ありませ🙇♂️
さんかめはめさん、コメントありがとうございました。メソッドは(オブジェクト指向とは関係なく)処理をまとめるものなので、その書籍のように解説しているケースもありますね。僕の動画とその書籍の説明を比べてもらって、分かりやすい説明を理解してもらうのが良いと思います。また、実際にプログラムを書いて動かしてみると、より深い理解につながりますよ👍
@@SekaChan ご回答ありがとうございます!菅原先生の説明の方が分かりやすいので、先生の方を参考にしようと思います笑実際に自分でプログラムを書いてみようと思います。ありがとうございます!☺️
とても分かりやすくスッと入ってくる講義でした!1点ご教示頂けると嬉しいのですが、最後のstaticの演習時にcountにstaticをつけることは理解なのですが、displayメソッドにもstaticをつける理由はなんでしょうか?実際にコードを実行してもcountにだけstaticつけても回答の通りになりましたのでますますわからなくなってしまいました。(変数の値さえ保持できればよいと思っています。)教えていただけますと幸いです。
たしかに最後の演習問題では、display()メソッドにstaticをつけなくても回答の通りになりますね。ただ、できればstaticはつけておいた方が良いです😄なぜかというと、Car4クラスのオブジェクトを作っていなくてもdisplay()メソッドを呼び出せるようにするためですね。staticをつけていない場合、DriveCar4.javaでオブジェクトを作る前にdisplay()メソッドを呼び出そうとするとコンパイルエラーになってしまいます。
ありがとうございます!なるほど、オブジェクトを作成しなくても呼べることに意義があるということですね。@@SekaChan
1:00:46 自分用
質問です。mainメソッドをpublic指定する理由がイマイチ分かっていないです。アクセサとかだったらmainメソッドがあるクラスが他のクラスのメソッドを使うからpublic指定しないと使えないということは分かります。ただmainメソッドはmainメソッドがあるクラスから呼び出している(=同じクラス)だと思うのでpublic指定しなくてもいいのでは…?と考えています。
倒置爆破さん、コメントありがとうございました。Javaのプログラムが動くときは、Javaの実行環境(JREやJVMとよばれるもの)が最初に【実行クラス名.main(~)】を呼び出す仕組みになっています。mainメソッドにpublic指定が必要なのは、クラスの外から呼び出されるためですね。
途中経過でs15:19
オブジェクト指向についての理解がイマイチできていないのですが、javabronzeを取得するのが目的なら紫本や黒本の問題の流れを徹底的に覚えるだけで合格までいけますでしょうか?
「Bronzeの取得」だけが目的なら、覚えるだけでいけるかもしれません。ただその先もJavaを使う場合は、分からない部分を見直したり、自分でプログラムを書いたりして理解を深める必要があると思います。
44:53のところで質問です。今回のサンプルは菅原さんと一人の方ですが、これが何人もの人になると、3行目のオブジェクトの生成がどんどん増えていくのですか?例えば今回の菅原さんが100人の名前とかになると、5行目6行目も増えていくと思うのですがどうなっていくのでしょう?実行用クラスがすごく大きくなってしまうかな?と思いました。よろしくお願いします。
うさ〇さん、コメントありがとうございます。何人ものオブジェクトを作るとしたら、オブジェクトの生成や値の代入などがその分増えていくことになりますね。(44:53以降のサンプルでいえば、3~6行目が増えていくイメージです)ただそれを1つずつ書くと実行用クラスが大きくなってしまうので、for文のような繰り返し文を使って書くことが多いですね。
再質問します。for文だと、例えば菅原さん、田中さん、山田さんとかになった場合は、固定値ではないのに,for文でどのように書くのですか?イメージがわかなかったのですみませんよろしくお願いします。
@@うさ-b3b 名前が入った配列を使うと思います。
有料級どころかU○emyとかの有料講座よりわかりやすいってどういうこと?!
Red-Hairedさん、コメントありがとうございました!そう感じてもらえて良かったです!ただ、ここは入門編です。この先のWebアプリ編やDB処理編こそ有料級ですよ👍
カプセル化の説明にて公開範囲の対象として紹介されている「他」というのは具体的にどんなところですか?
mugiさん、コメントありがとうございました。カプセル化の公開範囲として書いた「他」は、その表の項目にある「同クラス」「同パッケージ」「サブクラス」のいずれにも当たらないものを指します。つまり、別パッケージに含まれていて継承関係にないクラスですね。
good
thanks!
34:14
int countに既にstaticがあるのになぜ関数displayにstatic必要なのかがわかりません。void displayからstaticを取り除いた場合、どうなるか教えていただけますか?
一つもインスタンス化されていないときに0と表示したいからだと思います。staticをつけないとオブジェクトの変数.display()としないと呼び出せないので1以上になってしまいます。あとそれぞれのインスタンスに固有の値ではないので、オブジェクトがdisplay()するよりもクラスがdisplay()する方が認識としては近いと思います。
ソースコードをSJISで保存してるのは理由があるのですか?
テキストエディタの設定によるものです🙏
コンストラクタの存在理由はなんでしょうか?別になくてもいいんじゃないかな?っと思いました。これがないとこういう時に困るっというのが知りたいですm(_ _)m
S Sさん、良い質問をありがとうございました。たしかに、わざわざコンストラクタを作らなくてもプログラムを作ることはできます。ただ、オブジェクトを生成するタイミング(newするとき)に呼び出す仕組みになっているため、自分でset~メソッドを呼び出す必要がなく、オブジェクト内のメンバ変数に値が入っていない状態を防げるメリットもあり、実際はコンストラクタを作るケースのほうが多いですね。
すみません。javaの教本なども見ているのですが、returnの扱いがどうしても分からず、returnを使った場合、使っていない場合の違いが理解できないです
N Sさん、コメントありがとうございました。この動画をどこまで見てくれているのか分からないのですが、25:34 あたりから戻り値やreturn文について解説しています。もしまだ見ていなければ、こちらを見てみてください。もし見てくれていた場合は、returnを使ったときと使っていないときの「何についての」違いが特に理解できないかを教えてもらえると、より具体的な回答ができるかなと思います🙏
Bronze受かりません。。。
Bronzeも試験範囲が広いので、受かるにはある程度勉強する必要がありますね。特に「プログラムを作って動かすこと」「試験対策の問題を解くこと」を意識してみてください!
増えましたね。笑
1:09:55 ー
R Sさん、THANKSコメントありがとうございました!!頂いた金額は書籍の購入や動画の改善など、将来の視聴者さんのために使わせていただきますね✨こうやって応援してくれる人がいるのはとっても嬉しいし心強いです。これからもよろしくお願いします!
@@SekaChan すごく勉強になります!!ありがとうございます!
(概要欄にも書きましたが、念のためこちらにも記載します)
この動画の内容について、修正をさせてください。
3-2後半(22:17~)の板書について、右側中央のsetScoreメソッド1行目の最後に【 { 】の記述が不足していました。
誤った内容をお伝えしてしまいごめんなさい🙇♂
指摘してくれた@majoreality3810 さん、ありがとうございました。
オブジェクト指向関連の動画はたくさんあるけどダントツで一番分かりやすい。
もっと評価されるべき。
天さん、コメントありがとうございました!
そう感じてもらえて嬉しいです!いろいろ試行錯誤して作った動画なので、より多くの人に見てもらえた良いなと思います。
菅原さんの動画で毎日勉強させて頂いております!
数ヶ月前からプログラミングを使用した職業に転職したいと思い、書籍や動画、Webサイトなどで学習をしていましたが、何よりも菅原さんの解説動画が1番に分かりやすくて前よりも もっともっとプログラミングが好きになりました!
まだまだ初心者で右も左も分からない様な状態ですが、こんなに前向きに勉強ができるのも菅原さんの動画のおかげだと思っております。
基礎の基礎から理解できる様に作って頂いているおかげで、学習に対する不安や悩みが嘘のように解消されました。
素晴らしい解説動画や励みのお言葉、いつも本当にありがとうございます!
茶トラ猫 てち三郎さん、THANKSコメントありがとうございました!
この前2章が終わったところだと思いますが、もう3章も終わっちゃんですね😲
3章はオブジェクト指向の導入で、難しいって感じる人が多いところです。
このタイミングで「プログラミングが好きになった!」と思えたら、結構向いてるんじゃないかなと思いますよ👍
そういうふうに感じてもらえて、僕も動画を作って良かったなーと感じました。こちらこそ、ありあとうございます!!
次の4章は、入門講座で一番難しい内容です。
ここを乗り越えられたら5・6章は比較的理解しやすいと思うので、焦らずじっくり頑張っていってください!
今までネットや本を読んでもしっくりきていませんでしたが、根本的でより厳密な理解(メモリ領域の確保、どこの領域にできるのか)ができたことで、ようやく考え方がわかりスッキリしました!仕事でコードを読み込むときにも一つ一つの意味がしっかりわかるようになると思います。本当にありがとうございます!!
ふくろうさん、THANKSコメントありがとうございました!
プログラミングが「分かる」レベルにもいろいろありますが、コメント文から深くまで理解できている様子が伝わってきて僕も嬉しいです。
メモリ領域の使われ方など深い部分には触れられていない教材も多いですが、こういうところまで理解できているかが強いエンジニアには求められると思います。
ぜひ、今後のお仕事に活かしていってくださいね😄
こちらこそ、嬉しいコメントをありがとうございました!!
一生のバイブルになるなぁ。
ダントツでわかりやすいです。
KUROさん、コメントありがとうございました!
そう思ってもらえて良かったです。
オブジェクト指向の深い内容や例外処理、クラスライブラリ、webアプリ編の動画もあるので、ぜひ楽しく勉強していってください✨
研修で苦しんでいたのですがこの動画のおかげで救われました。ありがとうございます。
今Java研修を受けてるんですね。
Javaはこの先実践的なレベルまで解説動画を作ってあるので、もしまた分からなくなったら戻ってきてください😄
わいもw
素晴らしい動画ありがとうございます!
今26歳社会人でITに転職したくてJavasilver取得を目指しています。
全くの素人なので理解がなかなか難しいですが11月に資格取得できるように頑張りたいと思います。
elfさん、コメントありがとうございました!
最初は理解するのが難しい内容もあるかもしれませんが、分からないことよりも分かったことに目を向けて、焦らず楽しく勉強を進めていくのが良いのかなと思います。
同じように未経験からJavaSilverできたという報告をたくさんもらっているので、ぜひ頑張ってください!
Java勉強の6日目)01:30:20菅原先生のアドバイス通り週末はちょっと内容を思い出すぐらいでしっかり休みました。今日は仕事の変動もあり、心が揺れてなかなか集中できず、staticまでは終わらせたかったですが、失敗しました。涙、再来週基本情報技術者試験なのでそれまでには毎日最低30分目標で少しづつでも進めて行きたいと思います!学習途中ちょいちょい出てくる先生の言葉で元気を勇気をもらっています。^^今日も講義ありがとうございました。
週末はしっかり休めたようで良かったです。
仕事をしながらだと、勉強が思うように進まないときもありますよね。それなのに少しでもJavaに触れられたのなら、それだけで十分立派です!
もし立ち止まっちゃう日があったとしても、余裕ができたらまた進みたいと思えるときがきますから。
再来週は基本情報の試験を受けるみたいですし、無理せず一歩ずついきましょう!
Java勉強の5日目) 本日はあまり時間がなくて3章の復習と、3-5まで学習を進めました。
しっかり講義をもう一回見て演習問題解けましたので、感覚を忘れないように明日も学習しようとおもいます!!
講義ありがとうございます!
時間がなくてもしっかり学習を進められたなんてスゴイですね!
ただ、頑張りすぎると勉強が嫌になってきちゃったりもするので、無理はしすぎないでくださいね。
マラソンに給水や給食が欠かせないように、疲れる前に休むのが長く頑張り続けるコツです。
Taka 野良
Java入門講座で楽しく勉強しています。分かりやすい説明ありがとうございます。せかチャンの動画でJava初歩から始めています。 Webアプリ、MySQLまで理解を深めていければと思っています。
Taka 野良さん、コメントありがとうございました!
せかチャンの動画を見てもらえば、Javaを初歩からwebアプリ、DB処理まで体系的に学べます😄
ぜひ自分のペースで、楽しく勉強を進めていってください!
動画ありがとうございます😊
今までオブジェクトクラスを作る際、mainクラスしか作っておらず、戻り値等のプログラムを実行できませんでした。しかし、動画を通じてmainクラスとmainが記載されていないクラスを作る必要があることが分かり、オブジェクト指向を深く理解できました。ありがとうございます😭
K Oさん、コメントありがとうございました!
オブジェクト指向デビュー、おめでとうございます!
mainメソッドだけでもいろんなプログラムは作れますが、設計図クラスを利用できるようになると一気に視野が広がりますよね😄
さらに継承やポリモフィズム、クラスライブラリへ進むとまた面白いので、ぜひK Oさんのペースでスキルアップしていってください!
初めまして。5月からJavaを学習し始めた30過ぎの者です。
教材だけでは理解が難しい部分が多く色々と調べていたところ、こちらのチャンネルに辿り着きました。動画を何度か見させていただいているうちに、少しずつですが理解することが出来てきました。分かりやすい解説、本当にありがとうございます。
授業ノートも活用させていただきたいと思います。m(__)m
tomoさん、初めまして。
手持ちの教材とせかチャンの動画をあわせて使ってもらえれば、きっと理解が深まりやすいんじゃないかなと思います😄
オブジェクト指向が分かるとJavaの世界が一気に広がるので、ぜひこれからも楽しく勉強していってください!
前1回この動画を見て、何となくわかった気がして黒本を進めました。(黒本は全然分かりませんでした笑)、しかしその後もう1回帰ってくると、めちゃくちゃ頭に入ってきました!!黒本の理解も一層深まりました!!最高の動画です!!
アイリス大山さん、コメントありがとうございました!
もうオブジェクト指向まで進んでいて、黒本も何回か解けているようですし、勉強は順調みたいですね。
そういえばJavaSilverを受験するのなら、合格ロードマップ動画を見てもらうことをオススメします。
もしまだ見ていなければ、ぜひチェックしておいてください!
→ ruclips.net/video/l2ne1CUPsbM/видео.html
コンストラクタが何なのかいまいち分からなかったのですが、この動画で理解できました。
めちゃくちゃ分かりやすいです!!
nats natsさん、コメントありがとうございました!
コンストラクタって分かりにくいですよね💦
この動画で理解が深まったみたいで良かったです!
初心者でアイパス取ったのでみてみましたが、すげえわかりやすくて涙出ました。。ありがとうございます!
グレートバリアリーフさん、コメントありがとうございました!
アイパスを取れたなら、これから基本情報やプログラミングなど、勉強の幅が広がっていきそうですね。
分かりやすかったみたいで良かったです!
長くJavaの勉強は慣れていましたので本日3章復習と最後まで受講しました!
基本情報技術者B試験で不合格だったのでJavaの勉強も欠かせず、両方あせらず一緒にやって行こうと思いました!本日も学習講座ありがとうございました。
基本情報技術者試験、お疲れさまでした!
B試験は深い問題も出るので難しいですよね‥
アルゴリズムの基本をしっかり理解できれば、B試験はもちろんプログラミングにも役立ちます。もし必要であれば、こちらの動画も見てみてください。
▼はじめてのアルゴリズム講座
ruclips.net/video/2fh8Pyq-Lc8/видео.html
@@SekaChan ありがとうございます。次の試験これをしっかり勉強して合格します!!
菅原さん、話が簡単で分かりやすい。ホワイトボードの字が綺麗!読みやすい! 難しい内容なのに簡単にわかる。偉い!素晴らしい!名先生、菅原先生! これからも配信つづけて下さい! Javaに対する認識が変わりました!
在原孫一朗さん、コメントありがとうございました!
Javaに対する認識が変わったとありましたが、もし「わかる」「楽しい」っていう認識に変わっていたらとても嬉しいです✨
「分かりやすい解説」を考えるのが好きなので、もっと分かりやすい、楽しいって感じてもらえるような動画を作っていけるように頑張ります!
Java勉強の4日目)本日は3-4まで学習しましたが、演習問題が解けなくて、明日講義をもう一度見てから復習して、あらためて挑戦したいと思います。前独学でやった時は講義を進むことしか考えなくて全然身についてなかったので今回はしっかりJavaを理解したいと思います!今日もありがとうございました。
4日目の勉強、お疲れさまでした!
オブジェクト指向の導入部分(3-1~3-4)は入門講座のなかで特に重要なポイントの1つなので、焦らずじっくり取り組んでもらって良いと思います。
「講義を進むことしか考えてない」と、たしかに身につきにくいですからね。
ただ、いろんなサンプルに触れて慣れることで理解が進むケースもあるので、ある程度分かったら3-5以降に進んでもらうのもアリかなと思います。
研修でprogateのJavaをやってますが、初歩なのに一回でできないから向いてないと言われ、悔しくていろんな動画を探していて、こちらに辿りつきました。アホな私にもわかりやすくて涙が出ます。ありがとうございます。
オブジェクト指向を一回で理解するのは難しいと思います。
それにprogateで分からなくて来ましたっていう人、他にも結構いるんですよね。
なので、向いてないなんてことはないですよ。
焦らず自分のペースで勉強していけば大丈夫です!
@@SekaChan
ありがとうございます😭頑張ります!
めちゃくちゃわかりやすいです。。
合間に出てくる言葉も胸に沁みます…
今月IT業界に転職してきたので、これから勉強頑張ります。
貴重な講義動画ありがとうございます。
IT業界に転職したばっかりなんですね。
この業界は慣れるまでは覚えることが多くて大変かもしれません。
周りのできる人達をみると焦っちゃうので、昨日の自分を超えるイメージで頑張っていってください!
今までで一番わかりやすかったです!!
ささささん、コメントありがとうございました!
わかりやすいって感じてもらえて良かったです。
Javaはこの先の内容もEclipseなどのツール系の動画も作ってあるので、興味があればいろいろ見てみてください😄
時々、正面を向いて下さるのでリアル授業を受けているようだ。
arte & altroさん、コメントありがとうございました!
動画を見てくれる人たちがいるおかげで、僕もリアル授業をしている感覚でカメラに話しかけられるようになってきました✨
動画ありがとうございます。プログラミング初心者なのですが、「オブジェクト」と言う意味が今まで理解していなかったのですが、とても分かりやすかったです。チャンネル登録もしました!現在Javaを勉強しておりますが、業務で使えるようになるまでになれるよう頑張ります!!
Maggie_まぎーさん、コメント&チャンネル登録ありがとうございました!
オブジェクト指向は慣れるまで難しいですよね。
でもこの動画が理解できれば、基本の考え方はマスターできたと思って良いですよ👍
Javaは入門講座と応用講座、webアプリ編、データベース編、さらにEclipseやSpringBootなどの動画も作ってあるので、必要に応じていろんなスキルを身につけてもらえます。
ぜひ楽しく勉強していってください!
日本にいる外国人としてもめっちゃ理解しやすいです。
Thanksコメント、ありがとうございました!!
僕の動画は説明もホワイトボードの記述も日本語ばかりなのに、それでも理解しやすいって感じてもらえて嬉しいです😄
Javaはかなりハイレベルの内容まで動画を作ってあるので、ぜひ活用していってください!
めっちゃくちゃわかりやすい
ありがとうございます!?!!
6 Lryuさん、コメントありがとうございました!
わかりやすいって感じてもらえて良かったです😄
Javaはオブジェクト指向の応用編からwebアプリ編までひと通り動画を作ってあるので、ぜひスキルアップしていってください!
解説も丁寧、字もきれい!
当方情報系の学生ですが、授業よりクオリティが高い気もします笑
そう感じてもらえて良かったです😄
情報系の先生って、教えるのが好きな人と苦手な人に分かれる気がしますね。
(僕が授業で習ったときはチンプンカンプンでした笑)
前提知識ありきでみたけどstaticとカプセル化の代入前処理とかの意図をしれてよかったー
うちゃさん、コメントありがとうございました!
staticやカプセル化は意図や狙いまで理解できると、応用も利きやすいかなと思います。
この動画が役立ったみたいで良かったです!
死ぬほど参考にしてます😭ありがたいです
mi ssさん、嬉しいコメントありがとうございます!
動画を作った甲斐がありました✨
この先の動画もあるので、mi ssさんのペースで勉強していってください!
ありがとうございます!
unknownさん、THANKSコメントありがとうございました!
この動画が役に立ったのならとても嬉しいです。
応援でお送り頂いた金額は、将来の視聴者さんのため(もっと良い動画を作ったりチャンネルを広めたりなど)に使わせてもらいたいと思っています✨
これからもよろしくお願いします!
いいところ⑤ムダが無いのに必要なことはしっかり説明する
吉田雄一さん、こんにちは!
いつもコメントありがとうございます😄
動画をじっくり見てもらえていないと気付けないご意見で嬉しいです。
たしかに、「これはムダかなぁ」と感じる説明は編集時にカットしていますね。
ただ、淡白な動画になっちゃっている印象もあって、もう少し演出を加えたいなもと考えています✨
はじめまして菅原先生
私は20年前に大学時代にjavaを習っていましたが当時は良く分からないまま講義を受けていました。
その後職業が違い触れてこなかったのですが、どうしても基本情報技術者試験に受かるために午後対策本を購入して平行して勉強中です
(旧試験4回・新試験1回受験済)午後アルゴリズム問題でどうしても落ちてしまう)あの頃とは変わりプログラミングしやすい環境も出来ているのと、
どうしてもオブジェクト指向はイメージがし難いので菅原先生の講義を聞きたく拝聴しました。よろしくお願いいたします。
いきなりプログラムを作れと言われても無理なので最初は写経になってしまってもよいのでしょうか・・・
(実際にそうなっている・・・・・)
まきさん、コメントありがとうございました!
僕も大学時代に初めてJavaを習いましたが、そのときはまったく分かりませんでしたね‥
この動画は当時の自分でも分かるように基礎の基礎から説明しているので、ぜひ写経からスタートしてみてください。オブジェクト指向の理解につなげてもらえたら嬉しいです!
オブジェクト指向とアルゴリズムの考えは別物なので、こちらの動画も見てもらうと試験対策に役立つかなと思います。
▼アルゴリズム・フローチャート基礎講座
ruclips.net/video/2fh8Pyq-Lc8/видео.html
interfaceで定義して、Implementsする(つまり関数method)にしないと確かに設計図クラスになる記述部分は、動作しませんね。結構実際にコードをうち込んで実行するとエディターが間違いを指摘してくれるので、勉強になります。
タダタカサトウさん、コメントありがとうございました。
そうですね。実際にコードを打ち込みながらエラーと向き合う時間が一番理解が深まると思います。
この動画が役に立ったようで良かったです✨
黒本にでてくるようなコードの問題を解説して頂けれるとめちゃくちゃ嬉しいです!!!
黒本の著者さんもRUclipsをされているので、こちらを見てもらうのがオススメですよー😄
www.youtube.com/@java9521
@@SekaChan
ありがとうございます
ただ、せかちゃん氏のほうが自分には理解しやすいです。。。
@@僕を忘れた頃に君を忘れられない
そう思ってもらえて光栄です!
同じようなリクエストが集まったら検討してみますね🍀
@@SekaChan
ご検討のほど、何卒
オブジェクトの使い方のところで質問があります
classStudentの8行目から名前と英語と数学の点数を出す処理が行われています。一方でclassStuSampleでも8行目から平均点を出す処理が行われています。なぜ2つの画面に分けて処理をし、画面に出すのかが動画を何周してもわかりません。また分ける基準なども教えていただきたいです
よろしくお願いします
THANKSコメントありがとうございました!
まず、画面に表示する System.out.println() は、プログラムのどこからでも呼び出して実行できます。
2章までのサンプルのようにすべての処理をmainメソッド内に書くこともできますが、処理をまとめて別のクラスに抜き出すこともできるわけですね。
そうやって作ったのが、サンプルの display() や setScore(~)、getAvg() です。
そうするといろんなところから呼び出して利用できるようになり、3-1や3-2で解説したようなメリットがあります。
「分ける基準」は特に決まっていませんが、再利用したいかどうかは1つの基準になるかなと思います。
1:37:06でstaticのメソッドを呼び出す時には,「オブジェクト.変数(メソッド)」ではなく「クラス.変数(メソッド)」と仰っていましたが、
自分でコードを確認したところ「オブジェクト.変数(メソッド)」でもインスタンス化したものにはカウンタ変数は問題なく機能していました。
staticの1番のポイントは「インスタンス化しなくても呼び出せる」という点なのですね。
インスタンス化してもしなくても共通のものとしてあるという部分が大事だと。(認識間違えていたら教えてください!)
非常に助かります!
何でいいねって1回しか押せないんだろう。。
的場康平さん、コメントありがとうございました!
動画が役に立ったみたいで良かったです!
コメントでそう伝えてもらえたことが、いいね何回分ものパワーになります💪
めちゃくちゃ分かりやすくて感動しました!
ITスクールの方でもかなり説明が難しそうなところがすんなり理解できて目から鱗です。
ありがとうございましたm(__)m
ぷにさん、コメントありがとうございました!
たしかにここは説明が難しいところですね。
オブジェクト指向が分かればいろいろと応用が利くので、この動画が理解につながって良かったです😄
上手く設計できるようにはどうしたらいいんだろう
後から変えるときに、そんなことは想定してなかったとよくなる
VisualStudio開発環境下で、C#言語によりWindows GUIアプリの開発などの経験がありGUI部分は専用デザイナーにより楽に素早く開発出来ます。最近JAVAに興味をがあって、このチャンネルのお世話になっています。JAVA Eclipse 環境で同等の環境が構築できるようなのですが、環境構築方法、GUIアプリ開発講座などの動画を発信して頂ければ思い投稿しました。宜しくお願いします。
半田富次さん、コメントありがとうございました!
GUIアプリの開発は作った成果が目に見えて分かるので、すごく面白いですよね😄
WindowsのGUIアプリの開発講座については、他の視聴者さんからもリクエストが集まったら動画化を検討してみます。
わかりやすい動画ありがとうございます!すみません、24:28のところですが、setScoreメソッドの前半部分のなみかっこ忘れてます。
コメントありがとうございました!
たしかにsetScoreメソッドの { を忘れてしまっていました。
誤った情報をお伝えしてしまい申し訳ないです。
取り急ぎ、動画内や概要欄に注釈を入れるなど対応をさせてもらいました。
改めてご指摘ありがとうございました!
現在Javaを勉強している者です。
とても分かりやすく、楽しく勉強させていただいております。
【3-7】static【3-9】演習問題4のstaticで、display()のstaticメソッドを呼び出す部分での質問です。
【3-7】では動画を見ながらだったため、オブジェクト名「stu1」→ クラス名「Student4」と変更しておりました。
【3-9】演習問題4を解いた際に、「DriveCar4.java」の4.6.8行目のオブジェクト名「c1」「c2」「c3」を、クラス名「Car4」と変更をせずにコンパイル、実行をしてしまいました。
コンパイル、実行は特に問題なく動作したため、解答を確認した際に間違っていたことに気が付きました。
呼び出しの際は「クラス名.変数[メソッド]名」ということでしたが、「オブジェクト名.メソッド名」でも呼び出せてしまったのですが、
こういったものと認識するしかないのでしょうか。本当は内部でこういった動きをしているんだよ。といったことあれば教えていただけると幸いです。
けんぴっぴさん、コメントありがとうございました。
staticメソッドはクラスがもつメソッドなので、本来は「クラス名.メソッド名」の形で呼び出すべきですね😄
ただ、メモリ内でオブジェクトとクラスの情報は紐づいているため、「オブジェクト名.メソッド名」で呼び出すことができる“ことも”あります。
開発環境によってはコンパイル時に(推奨しない書き方という意味合いで)エラーになることもあるので、基本的にはクラス名から呼び出す書き方に慣れておけると良いですね。
@@SekaChan
ご回答ありがとうございます。
ほかの言語でも感じましたが、やはりできてしまうけど推奨しない。というのは多いですね。
少しずつ難しくなっていますが使って慣れていきます!
この度はありがとうございました。
1:43 こういう実際に現場で使用されるケースと乖離しすぎたサンプルコードって腐るほど参考書や解説サイトで見てきたけど、かえって分かりづらくするだけなんですよね。
オープンソースプロジェクト等で実際に使われているコードを元に解説したほうがいいと思います。
すごいよかった!基礎的な数学の解説してるゆくイロスクールさんとコラボしてほしいです!!
あいあいさん、コメントありがとうございました!
そろそろ誰かとコラボできたら良いなと思ってたので、コラボ先のリクエストはありがたいです😄
インスタンスフィールドの値を利用する時にthis.は付けなくても良いのでしょうか?
また、接頭辞としてpublic などを付けなくても良いのでしょうか。動画を見てる途中ですが疑問に思いました。
sukeさん、コメントありがとうございました。
この動画で扱っているプログラムでは、「this.」はつけなくても大丈夫です👍
(次の応用編では「this.」が必要な場面が出てきます)
「public」などのアクセス修飾子は、本来は付けるべきですね。
どんな修飾子があるかやその使い分けについては、1:38:33~のカプセル化を参照してください。
質問1: なぜeclipseを使わないんですか?
質問2: コードを書く時のキーボートの打ち方を教えてほしいです
例n.name();の()を書いた右カーソルを押してから;なのかとか
tっgっfっぐさん、コメントありがとうございました。
> 質問1
eclipseを使うとコンテンツアシストやデバッグなどの機能が優れすぎていて、本質が分かっていなくてもプログラムが完成してしまうためです。
視聴者さんにはJavaの文法や考え方をしっかり理解した上でツールを使いこなしてほしいという思いから、あえてシンプルなエディタのみで講座を進めています。
> 質問2
(質問の意味合いが分からない部分がありますが‥)この講座では左から右へと文字入力をしていて、カーソル移動などは特にしていないですね。
いつも分かりやすい動画ありがとうございます!
44:52の所なのですが、引数なしのコンストラクタを用意するというのが口頭だけではよく分かりませんでした、、😢
コードを書くとしたらどういう風にすれば良いということなのでしょうか??🙇♂️
さんかめはめさん、コメントありがとうございました。
指定の時間はコンストラクタが出てくる前なのでどの部分の説明を指しているのかが分からなかったのですが、一般的に「引数なしのコンストラクタ」は
-----
クラス名(){
:
}
-----
このようにして作ることができますね😄
@@SekaChan お忙しいところお答えいただきありがとうございます!
色んな動画で質問をたくさんしてしまい申し訳ないです、、
record定義して、配列は多元にしても、一つにしたほうがよいのではないでしょうか?
驚くほど分かりやすかったです…ありがとうございます!(´▽`)
コメントありがとうございました!
オブジェクト指向の導入は分かりにくいところなので、そう感じてもらえて良かったです😄
こんなレベルの動画を無料で見れるなんて。
西川なな実さん、コメントありがとうございました!
そう感じてもらえて良かったです😄
Java関連の動画は入門レベルから実践レベルまで幅広く作ってあるので、ぜひ必要なものを見ていってください!
毎日動画を視聴し、勉強させていただいています。
ありがとうございます。
一つ質問させてください。インスタンス化をするときですが、例題3-3では下記①のように記載していただいていると思います。
①Student stu1 = new Student();
ですが、下記②のように先頭の違うクラス名でインスタンス化する場合があるのでしょうか。
また、どういう動きをするのか教えていただけると幸いです。
②Teacher stu1 = new Student();
自己解決しました。ありがとうございます。これからも視聴続けます!
コメント&追伸ありがとうございました!
自己解決できて良かったです。これからも一緒にがんばっていきましょう!
最後の演習問題について質問です。
設計図クラスのcountのところだけにstaticを入れて、displayのところにstaticを入れておらず、実行のクラスでもc1.display, c2.display などクラス名ではなかったのですが、答えと全く同じようになりました。この場合はどういうことが起こっているのでしょうか?
ケン- calisthenicsさん、コメントありがとうございました。
(「どういうことが起こっているのか?」という質問なので、アバウトな回答になってしまいますが‥)
displayメソッドをstaticにしないときは、「インスタンス名.メソッド名」で呼び出すことができます。
つまり、c1.display()などのような形で呼び出せることになります。
今回の場合、この呼び出し方でも同じ結果になります。
この問題で振り返ってほしいのは、「なぜstaticを入れるのか?」ですね。
diplayメソッドの処理を踏まえると、このdisplayメソッドではstaticを(入れなくても動きますが)入れる方が適切です。
それはなぜか?を考えてみましょう😄
@@SekaChan ご丁寧にありがとうございます!もう一度見直してみます!
c言語のように分割コンパイルが必要ないのは楽でいいですね。
たしかに、c言語のコンパイルって大変でしたよね。
Javaのコンパイラはいろんな意味で優秀だなぁと個人的に感じてます。
JavaSilver取得のため、活用させていただいてます!
演習問題のダウンロードファイルですが、3-9>Q にCar 3.javaの回答ファイルが入っておりネタバレ喰らいました笑
修正しておいていただけると嬉しいです!
使用PCはmacOS Monterey バージョン12.6.3です
saya icchiyさん、コメントありがとうございました!
そして、本当にごめんなさい!!
せっかく演習に取り組もうって思ってくれたのに、ネタバレしてしまうなんて最悪です‥
確認しましたが、回答例のプログラムがQフォルダの中に入っちゃっていたんですね。ホントすみません🙏
回答例を取り除いたデータを再アップしておきました。
何度もご質問してしまい申し訳ありません🙇♂️
メソッドは菅原先生の説明だと初めてオブジェクト指向で出てきましたが、スッキリわかるjavaという教科書を読んでいるとオブジェクト指向ではなく、一つのテキスト?の中にメソッドの呼び出しをしており、かなり混乱しております。何か良い考え方は無いでしょうか??
分かりにくい質問で申し訳ありませ🙇♂️
さんかめはめさん、コメントありがとうございました。
メソッドは(オブジェクト指向とは関係なく)処理をまとめるものなので、その書籍のように解説しているケースもありますね。
僕の動画とその書籍の説明を比べてもらって、分かりやすい説明を理解してもらうのが良いと思います。
また、実際にプログラムを書いて動かしてみると、より深い理解につながりますよ👍
@@SekaChan
ご回答ありがとうございます!
菅原先生の説明の方が分かりやすいので、先生の方を参考にしようと思います笑
実際に自分でプログラムを書いてみようと思います。
ありがとうございます!☺️
とても分かりやすくスッと入ってくる講義でした!
1点ご教示頂けると嬉しいのですが、最後のstaticの演習時にcountにstaticをつけることは理解なのですが、displayメソッドにもstaticをつける理由はなんでしょうか?
実際にコードを実行してもcountにだけstaticつけても回答の通りになりましたのでますますわからなくなってしまいました。(変数の値さえ保持できればよいと思っています。)
教えていただけますと幸いです。
たしかに最後の演習問題では、display()メソッドにstaticをつけなくても回答の通りになりますね。
ただ、できればstaticはつけておいた方が良いです😄
なぜかというと、Car4クラスのオブジェクトを作っていなくてもdisplay()メソッドを呼び出せるようにするためですね。
staticをつけていない場合、DriveCar4.javaでオブジェクトを作る前にdisplay()メソッドを呼び出そうとするとコンパイルエラーになってしまいます。
ありがとうございます!なるほど、オブジェクトを作成しなくても呼べることに意義があるということですね。@@SekaChan
1:00:46 自分用
質問です。
mainメソッドをpublic指定する理由がイマイチ分かっていないです。
アクセサとかだったらmainメソッドがあるクラスが他のクラスのメソッドを使うからpublic指定しないと使えないということは分かります。
ただmainメソッドはmainメソッドがあるクラスから呼び出している(=同じクラス)だと思うのでpublic指定しなくてもいいのでは…?と考えています。
倒置爆破さん、コメントありがとうございました。
Javaのプログラムが動くときは、Javaの実行環境(JREやJVMとよばれるもの)が最初に【実行クラス名.main(~)】を呼び出す仕組みになっています。
mainメソッドにpublic指定が必要なのは、クラスの外から呼び出されるためですね。
途中経過でs
15:19
オブジェクト指向についての理解がイマイチできていないのですが、javabronzeを取得するのが目的なら紫本や黒本の問題の流れを徹底的に覚えるだけで合格までいけますでしょうか?
「Bronzeの取得」だけが目的なら、覚えるだけでいけるかもしれません。
ただその先もJavaを使う場合は、分からない部分を見直したり、自分でプログラムを書いたりして理解を深める必要があると思います。
44:53のところで質問です。
今回のサンプルは菅原さんと一人の方ですが、
これが何人もの人になると、3行目のオブジェクトの生成がどんどん増えていくのですか?
例えば今回の菅原さんが100人の名前とかになると、5行目6行目も増えていくと思うのですが
どうなっていくのでしょう?
実行用クラスがすごく大きくなってしまうかな?と思いました。
よろしくお願いします。
うさ〇さん、コメントありがとうございます。
何人ものオブジェクトを作るとしたら、オブジェクトの生成や値の代入などがその分増えていくことになりますね。
(44:53以降のサンプルでいえば、3~6行目が増えていくイメージです)
ただそれを1つずつ書くと実行用クラスが大きくなってしまうので、for文のような繰り返し文を使って書くことが多いですね。
再質問します。
for文だと、例えば菅原さん、田中さん、山田さんとかになった場合は、
固定値ではないのに,for文でどのように書くのですか?
イメージがわかなかったのですみませんよろしくお願いします。
@@うさ-b3b 名前が入った配列を使うと思います。
有料級どころかU○emyとかの有料講座よりわかりやすいってどういうこと?!
Red-Hairedさん、コメントありがとうございました!
そう感じてもらえて良かったです!
ただ、ここは入門編です。この先のWebアプリ編やDB処理編こそ有料級ですよ👍
カプセル化の説明にて公開範囲の対象として紹介されている「他」というのは
具体的にどんなところですか?
mugiさん、コメントありがとうございました。
カプセル化の公開範囲として書いた「他」は、その表の項目にある「同クラス」「同パッケージ」「サブクラス」のいずれにも当たらないものを指します。
つまり、別パッケージに含まれていて継承関係にないクラスですね。
good
thanks!
34:14
int countに既にstaticがあるのになぜ関数displayにstatic必要なのかがわかりません。void displayからstaticを取り除いた場合、どうなるか教えていただけますか?
一つもインスタンス化されていないときに0と表示したいからだと思います。staticをつけないとオブジェクトの変数.display()としないと呼び出せないので1以上になってしまいます。あとそれぞれのインスタンスに固有の値ではないので、オブジェクトがdisplay()するよりもクラスがdisplay()する方が認識としては近いと思います。
ソースコードをSJISで保存してるのは理由があるのですか?
テキストエディタの設定によるものです🙏
コンストラクタの存在理由はなんでしょうか?
別になくてもいいんじゃないかな?っと思いました。
これがないとこういう時に困るっというのが知りたいですm(_ _)m
S Sさん、良い質問をありがとうございました。
たしかに、わざわざコンストラクタを作らなくてもプログラムを作ることはできます。
ただ、オブジェクトを生成するタイミング(newするとき)に呼び出す仕組みになっているため、自分でset~メソッドを呼び出す必要がなく、オブジェクト内のメンバ変数に値が入っていない状態を防げるメリットもあり、実際はコンストラクタを作るケースのほうが多いですね。
すみません。
javaの教本なども見ているのですが、returnの扱いがどうしても分からず、returnを使った場合、使っていない場合の違いが理解できないです
N Sさん、コメントありがとうございました。
この動画をどこまで見てくれているのか分からないのですが、25:34 あたりから戻り値やreturn文について解説しています。
もしまだ見ていなければ、こちらを見てみてください。
もし見てくれていた場合は、returnを使ったときと使っていないときの「何についての」違いが特に理解できないかを教えてもらえると、より具体的な回答ができるかなと思います🙏
Bronze受かりません。。。
Bronzeも試験範囲が広いので、受かるにはある程度勉強する必要がありますね。
特に「プログラムを作って動かすこと」「試験対策の問題を解くこと」を意識してみてください!
増えましたね。笑
1:09:55 ー
ありがとうございます!
R Sさん、THANKSコメントありがとうございました!!
頂いた金額は書籍の購入や動画の改善など、将来の視聴者さんのために使わせていただきますね✨
こうやって応援してくれる人がいるのはとっても嬉しいし心強いです。
これからもよろしくお願いします!
@@SekaChan すごく勉強になります!!ありがとうございます!