【2時間で完全マスター】オブジェクト指向の考え方やプログラムが丸分かり【Javaプログラミング入門講座 総集編】

Поділитися
Вставка
  • Опубліковано 4 лип 2024
  • 【Java入門講座】3章 オブジェクト指向を始めよう! の動画を1本にまとめました。
    初心者向けにJavaのオブジェクト指向の基礎を徹底解説!この1本でクラスとオブジェクト、オーバーロード、コンストラクタ、static、カプセル化が丸分かり!
    📌【お詫び】3-2 後半の板書について
    3-2後半(22:17~)の板書について、右側中央のsetScoreメソッド1行目の最後に【 { 】の記述が不足していました。
    誤った内容をお伝えしてしまいごめんなさい。
    指摘してくれた@majoreality3810 さん、ありがとうございました。
    ⭐無料&楽しく勉強できる場所を作りたい!そんな想いで授業動画を作ってます😁
    →チャンネル登録/高評価/周りにオススメ で応援してもらえると嬉しいです✨✨
    🌸チャンネル登録はこちら!
    ua-cam.com/users/SekaChan?su...
    📙授業ノートはこちら!
    bit.ly/3He5H6i
    📄プログラムはこちら!
    bit.ly/3z56Avq
    👀関連動画はこちら!
    ▼Javaの始め方(1章 総集編)
    • 【Java入門講座 総集編】40分でJava...
    ▼Javaの基本文法(2章 総集編)
    • 【Java入門講座 総集編】超初心者歓迎!J...
    ▼次の動画
    • 【完全マスター】継承やポリモーフィズムの考え...
    ▼授業動画の一覧
    • 独学でJavaプログラミングをマスター!初心...
    💡チャプター
    0:00:00 オープニング
    0:00:33 オブジェクト指向( • オブジェクト指向の必要性とメリットが理解でき... )
    0:15:37 設計図クラス( • 属性とメンバ変数や操作とメソッドの違い、分か... )
    0:34:18 オブジェクトの使い方( • インスタンス化の方法とメモリ内部の動きを解説... )
    0:48:11 演習問題( • 設計図クラスを作ってインスタンス化するプログ... )
    1:00:46 オーバーロード( • オーバーロードのメリット(作る側・呼び出す側... )
    1:12:04 コンストラクタ( • コンストラクタを作る3つのコツと使うメリット... )
    1:24:49 static( • static変数、staticメソッドの使い... )
    1:38:33 カプセル化( • アクセス修飾子の使い方とカプセル化のメリット... )
    1:53:23 演習問題( • オーバーロード、コンストラクタ、static... )
    Correction:
    22:17 板書に誤りがあります。概要欄またはコメント欄📌をご覧ください
    🙋‍♂️プロフィール
    【せかチャン 菅原】
    ・東京工業大学大学院 情報理工学研究科 卒業
    ・大学生、大学院生のときに5年半塾講師
    ・IT研修講師として情報技術、プログラミングのセミナーを企画・実施
    ・Oracle社より「Instructor of the Year(満足度日本一)」「Java講師賞」を4年連続受賞
    「分かった!」と言ってもらえる瞬間、勉強を楽しいと感じてもらえる瞬間が好きです。
    フリーラーニング(無料で学べる場)を広げたいと思ってUA-camをはじめました。
    一緒に楽しく勉強&成長していきましょう!
    📳Twitter
    / sekachanit
    🎵音源提供
    DOVA-SYNDROME
    dova-s.jp/
    ※動画によっては使用していない場合があります
    #Java #プログラミング #せかチャンのJava入門講座 #プログラマー #せかチャン

КОМЕНТАРІ • 147

  • @SekaChan
    @SekaChan  11 місяців тому +6

    (概要欄にも書きましたが、念のためこちらにも記載します)
    この動画の内容について、修正をさせてください。
    3-2後半(22:17~)の板書について、右側中央のsetScoreメソッド1行目の最後に【 { 】の記述が不足していました。
    誤った内容をお伝えしてしまいごめんなさい🙇‍♂
    指摘してくれた@majoreality3810 さん、ありがとうございました。

  • @user-zq1rc8iu7w
    @user-zq1rc8iu7w 9 місяців тому +25

    オブジェクト指向関連の動画はたくさんあるけどダントツで一番分かりやすい。
    もっと評価されるべき。

    • @SekaChan
      @SekaChan  9 місяців тому +1

      天さん、コメントありがとうございました!
      そう感じてもらえて嬉しいです!いろいろ試行錯誤して作った動画なので、より多くの人に見てもらえた良いなと思います。

  • @raio860
    @raio860 Місяць тому +5

    研修で苦しんでいたのですがこの動画のおかげで救われました。ありがとうございます。

    • @SekaChan
      @SekaChan  Місяць тому +1

      今Java研修を受けてるんですね。
      Javaはこの先実践的なレベルまで解説動画を作ってあるので、もしまた分からなくなったら戻ってきてください😄

    • @Samuraikokushi
      @Samuraikokushi Місяць тому +1

      わいもw

  • @user-wc4wt9pz1i
    @user-wc4wt9pz1i Рік тому +6

    今までネットや本を読んでもしっくりきていませんでしたが、根本的でより厳密な理解(メモリ領域の確保、どこの領域にできるのか)ができたことで、ようやく考え方がわかりスッキリしました!仕事でコードを読み込むときにも一つ一つの意味がしっかりわかるようになると思います。本当にありがとうございます!!

    • @SekaChan
      @SekaChan  Рік тому +1

      ふくろうさん、THANKSコメントありがとうございました!
      プログラミングが「分かる」レベルにもいろいろありますが、コメント文から深くまで理解できている様子が伝わってきて僕も嬉しいです。
      メモリ領域の使われ方など深い部分には触れられていない教材も多いですが、こういうところまで理解できているかが強いエンジニアには求められると思います。
      ぜひ、今後のお仕事に活かしていってくださいね😄
      こちらこそ、嬉しいコメントをありがとうございました!!

  • @MUTON_46546
    @MUTON_46546 Рік тому +13

    一生のバイブルになるなぁ。
    ダントツでわかりやすいです。

    • @SekaChan
      @SekaChan  Рік тому +1

      KUROさん、コメントありがとうございました!
      そう思ってもらえて良かったです。
      オブジェクト指向の深い内容や例外処理、クラスライブラリ、webアプリ編の動画もあるので、ぜひ楽しく勉強していってください✨

  • @techitechi003
    @techitechi003 Рік тому +4

    菅原さんの動画で毎日勉強させて頂いております!
    数ヶ月前からプログラミングを使用した職業に転職したいと思い、書籍や動画、Webサイトなどで学習をしていましたが、何よりも菅原さんの解説動画が1番に分かりやすくて前よりも もっともっとプログラミングが好きになりました!
    まだまだ初心者で右も左も分からない様な状態ですが、こんなに前向きに勉強ができるのも菅原さんの動画のおかげだと思っております。
    基礎の基礎から理解できる様に作って頂いているおかげで、学習に対する不安や悩みが嘘のように解消されました。
    素晴らしい解説動画や励みのお言葉、いつも本当にありがとうございます!

    • @SekaChan
      @SekaChan  Рік тому +1

      茶トラ猫 てち三郎さん、THANKSコメントありがとうございました!
      この前2章が終わったところだと思いますが、もう3章も終わっちゃんですね😲
      3章はオブジェクト指向の導入で、難しいって感じる人が多いところです。
      このタイミングで「プログラミングが好きになった!」と思えたら、結構向いてるんじゃないかなと思いますよ👍
      そういうふうに感じてもらえて、僕も動画を作って良かったなーと感じました。こちらこそ、ありあとうございます!!
      次の4章は、入門講座で一番難しい内容です。
      ここを乗り越えられたら5・6章は比較的理解しやすいと思うので、焦らずじっくり頑張っていってください!

  • @tomo45458
    @tomo45458 10 місяців тому +4

    初めまして。5月からJavaを学習し始めた30過ぎの者です。
    教材だけでは理解が難しい部分が多く色々と調べていたところ、こちらのチャンネルに辿り着きました。動画を何度か見させていただいているうちに、少しずつですが理解することが出来てきました。分かりやすい解説、本当にありがとうございます。
    授業ノートも活用させていただきたいと思います。m(__)m

    • @SekaChan
      @SekaChan  10 місяців тому +2

      tomoさん、初めまして。
      手持ちの教材とせかチャンの動画をあわせて使ってもらえれば、きっと理解が深まりやすいんじゃないかなと思います😄
      オブジェクト指向が分かるとJavaの世界が一気に広がるので、ぜひこれからも楽しく勉強していってください!

  • @ko220
    @ko220 Рік тому +3

    動画ありがとうございます😊
    今までオブジェクトクラスを作る際、mainクラスしか作っておらず、戻り値等のプログラムを実行できませんでした。しかし、動画を通じてmainクラスとmainが記載されていないクラスを作る必要があることが分かり、オブジェクト指向を深く理解できました。ありがとうございます😭

    • @SekaChan
      @SekaChan  Рік тому

      K Oさん、コメントありがとうございました!
      オブジェクト指向デビュー、おめでとうございます!
      mainメソッドだけでもいろんなプログラムは作れますが、設計図クラスを利用できるようになると一気に視野が広がりますよね😄
      さらに継承やポリモフィズム、クラスライブラリへ進むとまた面白いので、ぜひK Oさんのペースでスキルアップしていってください!

  • @6lryu332
    @6lryu332 Рік тому +4

    めっちゃくちゃわかりやすい
    ありがとうございます!?!!

    • @SekaChan
      @SekaChan  Рік тому

      6 Lryuさん、コメントありがとうございました!
      わかりやすいって感じてもらえて良かったです😄
      Javaはオブジェクト指向の応用編からwebアプリ編までひと通り動画を作ってあるので、ぜひスキルアップしていってください!

  • @natsnats8999
    @natsnats8999 Рік тому +8

    コンストラクタが何なのかいまいち分からなかったのですが、この動画で理解できました。
    めちゃくちゃ分かりやすいです!!

    • @SekaChan
      @SekaChan  Рік тому

      nats natsさん、コメントありがとうございました!
      コンストラクタって分かりにくいですよね💦
      この動画で理解が深まったみたいで良かったです!

  • @user-iy6ee6qz7k
    @user-iy6ee6qz7k Рік тому +4

    今までで一番わかりやすかったです!!

    • @SekaChan
      @SekaChan  Рік тому +1

      ささささん、コメントありがとうございました!
      わかりやすいって感じてもらえて良かったです。
      Javaはこの先の内容もEclipseなどのツール系の動画も作ってあるので、興味があればいろいろ見てみてください😄

  • @user-kr8bs8vh8k
    @user-kr8bs8vh8k 9 місяців тому +4

    前1回この動画を見て、何となくわかった気がして黒本を進めました。(黒本は全然分かりませんでした笑)、しかしその後もう1回帰ってくると、めちゃくちゃ頭に入ってきました!!黒本の理解も一層深まりました!!最高の動画です!!

    • @SekaChan
      @SekaChan  9 місяців тому +1

      アイリス大山さん、コメントありがとうございました!
      もうオブジェクト指向まで進んでいて、黒本も何回か解けているようですし、勉強は順調みたいですね。
      そういえばJavaSilverを受験するのなら、合格ロードマップ動画を見てもらうことをオススメします。
      もしまだ見ていなければ、ぜひチェックしておいてください!
      → ua-cam.com/video/l2ne1CUPsbM/v-deo.html

  • @Baechantokyo
    @Baechantokyo Рік тому +4

    Java勉強の5日目) 本日はあまり時間がなくて3章の復習と、3-5まで学習を進めました。
    しっかり講義をもう一回見て演習問題解けましたので、感覚を忘れないように明日も学習しようとおもいます!!
    講義ありがとうございます!

    • @SekaChan
      @SekaChan  Рік тому +2

      時間がなくてもしっかり学習を進められたなんてスゴイですね!
      ただ、頑張りすぎると勉強が嫌になってきちゃったりもするので、無理はしすぎないでくださいね。
      マラソンに給水や給食が欠かせないように、疲れる前に休むのが長く頑張り続けるコツです。

  • @user-ds5mt7fq8w
    @user-ds5mt7fq8w Рік тому +7

    菅原さん、話が簡単で分かりやすい。ホワイトボードの字が綺麗!読みやすい! 難しい内容なのに簡単にわかる。偉い!素晴らしい!名先生、菅原先生! これからも配信つづけて下さい! Javaに対する認識が変わりました!

    • @SekaChan
      @SekaChan  Рік тому +1

      在原孫一朗さん、コメントありがとうございました!
      Javaに対する認識が変わったとありましたが、もし「わかる」「楽しい」っていう認識に変わっていたらとても嬉しいです✨
      「分かりやすい解説」を考えるのが好きなので、もっと分かりやすい、楽しいって感じてもらえるような動画を作っていけるように頑張ります!

  • @Baechantokyo
    @Baechantokyo Рік тому +2

    Java勉強の4日目)本日は3-4まで学習しましたが、演習問題が解けなくて、明日講義をもう一度見てから復習して、あらためて挑戦したいと思います。前独学でやった時は講義を進むことしか考えなくて全然身についてなかったので今回はしっかりJavaを理解したいと思います!今日もありがとうございました。

    • @SekaChan
      @SekaChan  Рік тому +1

      4日目の勉強、お疲れさまでした!
      オブジェクト指向の導入部分(3-1~3-4)は入門講座のなかで特に重要なポイントの1つなので、焦らずじっくり取り組んでもらって良いと思います。
      「講義を進むことしか考えてない」と、たしかに身につきにくいですからね。
      ただ、いろんなサンプルに触れて慣れることで理解が進むケースもあるので、ある程度分かったら3-5以降に進んでもらうのもアリかなと思います。

  • @user-yn4tx6lu4l
    @user-yn4tx6lu4l 10 місяців тому +2

    初心者でアイパス取ったのでみてみましたが、すげえわかりやすくて涙出ました。。ありがとうございます!

    • @SekaChan
      @SekaChan  10 місяців тому

      グレートバリアリーフさん、コメントありがとうございました!
      アイパスを取れたなら、これから基本情報やプログラミングなど、勉強の幅が広がっていきそうですね。
      分かりやすかったみたいで良かったです!

  • @miss8960
    @miss8960 2 роки тому +3

    死ぬほど参考にしてます😭ありがたいです

    • @SekaChan
      @SekaChan  2 роки тому

      mi ssさん、嬉しいコメントありがとうございます!
      動画を作った甲斐がありました✨
      この先の動画もあるので、mi ssさんのペースで勉強していってください!

  • @masakomaggie4071
    @masakomaggie4071 6 місяців тому +1

    動画ありがとうございます。プログラミング初心者なのですが、「オブジェクト」と言う意味が今まで理解していなかったのですが、とても分かりやすかったです。チャンネル登録もしました!現在Javaを勉強しておりますが、業務で使えるようになるまでになれるよう頑張ります!!

    • @SekaChan
      @SekaChan  6 місяців тому +1

      Maggie_まぎーさん、コメント&チャンネル登録ありがとうございました!
      オブジェクト指向は慣れるまで難しいですよね。
      でもこの動画が理解できれば、基本の考え方はマスターできたと思って良いですよ👍
      Javaは入門講座と応用講座、webアプリ編、データベース編、さらにEclipseやSpringBootなどの動画も作ってあるので、必要に応じていろんなスキルを身につけてもらえます。
      ぜひ楽しく勉強していってください!

  • @studyholic5393
    @studyholic5393 2 місяці тому +3

    解説も丁寧、字もきれい!
    当方情報系の学生ですが、授業よりクオリティが高い気もします笑

    • @SekaChan
      @SekaChan  2 місяці тому

      そう感じてもらえて良かったです😄
      情報系の先生って、教えるのが好きな人と苦手な人に分かれる気がしますね。
      (僕が授業で習ったときはチンプンカンプンでした笑)

  • @Taka-it4cv
    @Taka-it4cv Рік тому +3

    Taka 野良
    Java入門講座で楽しく勉強しています。分かりやすい説明ありがとうございます。せかチャンの動画でJava初歩から始めています。 Webアプリ、MySQLまで理解を深めていければと思っています。

    • @SekaChan
      @SekaChan  Рік тому +1

      Taka 野良さん、コメントありがとうございました!
      せかチャンの動画を見てもらえば、Javaを初歩からwebアプリ、DB処理まで体系的に学べます😄
      ぜひ自分のペースで、楽しく勉強を進めていってください!

  • @A-01234
    @A-01234 Місяць тому +1

    めちゃくちゃわかりやすいです。。
    合間に出てくる言葉も胸に沁みます…
    今月IT業界に転職してきたので、これから勉強頑張ります。
    貴重な講義動画ありがとうございます。

    • @SekaChan
      @SekaChan  Місяць тому

      IT業界に転職したばっかりなんですね。
      この業界は慣れるまでは覚えることが多くて大変かもしれません。
      周りのできる人達をみると焦っちゃうので、昨日の自分を超えるイメージで頑張っていってください!

  • @Baechantokyo
    @Baechantokyo Рік тому +2

    Java勉強の6日目)01:30:20菅原先生のアドバイス通り週末はちょっと内容を思い出すぐらいでしっかり休みました。今日は仕事の変動もあり、心が揺れてなかなか集中できず、staticまでは終わらせたかったですが、失敗しました。涙、再来週基本情報技術者試験なのでそれまでには毎日最低30分目標で少しづつでも進めて行きたいと思います!学習途中ちょいちょい出てくる先生の言葉で元気を勇気をもらっています。^^今日も講義ありがとうございました。

    • @SekaChan
      @SekaChan  Рік тому +1

      週末はしっかり休めたようで良かったです。
      仕事をしながらだと、勉強が思うように進まないときもありますよね。それなのに少しでもJavaに触れられたのなら、それだけで十分立派です!
      もし立ち止まっちゃう日があったとしても、余裕ができたらまた進みたいと思えるときがきますから。
      再来週は基本情報の試験を受けるみたいですし、無理せず一歩ずついきましょう!

  • @YY-oj4gu
    @YY-oj4gu 2 роки тому +13

    いいところ⑤ムダが無いのに必要なことはしっかり説明する

    • @SekaChan
      @SekaChan  2 роки тому

      吉田雄一さん、こんにちは!
      いつもコメントありがとうございます😄
      動画をじっくり見てもらえていないと気付けないご意見で嬉しいです。
      たしかに、「これはムダかなぁ」と感じる説明は編集時にカットしていますね。
      ただ、淡白な動画になっちゃっている印象もあって、もう少し演出を加えたいなもと考えています✨

  • @user-fb4py1yk9z
    @user-fb4py1yk9z 2 місяці тому +2

    日本にいる外国人としてもめっちゃ理解しやすいです。

    • @SekaChan
      @SekaChan  2 місяці тому

      Thanksコメント、ありがとうございました!!
      僕の動画は説明もホワイトボードの記述も日本語ばかりなのに、それでも理解しやすいって感じてもらえて嬉しいです😄
      Javaはかなりハイレベルの内容まで動画を作ってあるので、ぜひ活用していってください!

  • @unknown-qy9mk
    @unknown-qy9mk 2 роки тому +3

    ありがとうございます!

    • @SekaChan
      @SekaChan  2 роки тому

      unknownさん、THANKSコメントありがとうございました!
      この動画が役に立ったのならとても嬉しいです。
      応援でお送り頂いた金額は、将来の視聴者さんのため(もっと良い動画を作ったりチャンネルを広めたりなど)に使わせてもらいたいと思っています✨
      これからもよろしくお願いします!

  • @user-eh8nm7tn6f
    @user-eh8nm7tn6f 9 місяців тому +2

    素晴らしい動画ありがとうございます!
    今26歳社会人でITに転職したくてJavasilver取得を目指しています。
    全くの素人なので理解がなかなか難しいですが11月に資格取得できるように頑張りたいと思います。

    • @SekaChan
      @SekaChan  9 місяців тому +1

      elfさん、コメントありがとうございました!
      最初は理解するのが難しい内容もあるかもしれませんが、分からないことよりも分かったことに目を向けて、焦らず楽しく勉強を進めていくのが良いのかなと思います。
      同じように未経験からJavaSilverできたという報告をたくさんもらっているので、ぜひ頑張ってください!

  • @user-yc7ge2vk9h
    @user-yc7ge2vk9h 10 місяців тому +2

    前提知識ありきでみたけどstaticとカプセル化の代入前処理とかの意図をしれてよかったー

    • @SekaChan
      @SekaChan  10 місяців тому

      うちゃさん、コメントありがとうございました!
      staticやカプセル化は意図や狙いまで理解できると、応用も利きやすいかなと思います。
      この動画が役立ったみたいで良かったです!

  • @Baechantokyo
    @Baechantokyo 11 місяців тому +2

    長くJavaの勉強は慣れていましたので本日3章復習と最後まで受講しました!
    基本情報技術者B試験で不合格だったのでJavaの勉強も欠かせず、両方あせらず一緒にやって行こうと思いました!本日も学習講座ありがとうございました。

    • @SekaChan
      @SekaChan  11 місяців тому +1

      基本情報技術者試験、お疲れさまでした!
      B試験は深い問題も出るので難しいですよね‥
      アルゴリズムの基本をしっかり理解できれば、B試験はもちろんプログラミングにも役立ちます。もし必要であれば、こちらの動画も見てみてください。
      ▼はじめてのアルゴリズム講座
      ua-cam.com/video/2fh8Pyq-Lc8/v-deo.html

    • @Baechantokyo
      @Baechantokyo 11 місяців тому +1

      @@SekaChan ありがとうございます。次の試験これをしっかり勉強して合格します!!

  • @artealtro7473
    @artealtro7473 Рік тому +1

    時々、正面を向いて下さるのでリアル授業を受けているようだ。

    • @SekaChan
      @SekaChan  Рік тому

      arte & altroさん、コメントありがとうございました!
      動画を見てくれる人たちがいるおかげで、僕もリアル授業をしている感覚でカメラに話しかけられるようになってきました✨

  • @CheeseIsPizza
    @CheeseIsPizza Місяць тому +1

    黒本にでてくるようなコードの問題を解説して頂けれるとめちゃくちゃ嬉しいです!!!

    • @SekaChan
      @SekaChan  Місяць тому

      黒本の著者さんもUA-camをされているので、こちらを見てもらうのがオススメですよー😄
      www.youtube.com/@java9521

    • @CheeseIsPizza
      @CheeseIsPizza Місяць тому +1

      @@SekaChan
      ありがとうございます
      ただ、せかちゃん氏のほうが自分には理解しやすいです。。。

    • @SekaChan
      @SekaChan  Місяць тому

      @@CheeseIsPizza
      そう思ってもらえて光栄です!
      同じようなリクエストが集まったら検討してみますね🍀

    • @CheeseIsPizza
      @CheeseIsPizza Місяць тому +1

      @@SekaChan
      ご検討のほど、何卒

  • @user-lj2jc8zy9h
    @user-lj2jc8zy9h Рік тому +2

    いつも分かりやすい動画ありがとうございます!
    44:52の所なのですが、引数なしのコンストラクタを用意するというのが口頭だけではよく分かりませんでした、、😢
    コードを書くとしたらどういう風にすれば良いということなのでしょうか??🙇‍♂️

    • @SekaChan
      @SekaChan  Рік тому +1

      さんかめはめさん、コメントありがとうございました。
      指定の時間はコンストラクタが出てくる前なのでどの部分の説明を指しているのかが分からなかったのですが、一般的に「引数なしのコンストラクタ」は
      -----
      クラス名(){
       :
      }
      -----
      このようにして作ることができますね😄

    • @user-lj2jc8zy9h
      @user-lj2jc8zy9h Рік тому +1

      @@SekaChan お忙しいところお答えいただきありがとうございます!
      色んな動画で質問をたくさんしてしまい申し訳ないです、、

  • @suke6628
    @suke6628 Рік тому +2

    インスタンスフィールドの値を利用する時にthis.は付けなくても良いのでしょうか?
    また、接頭辞としてpublic などを付けなくても良いのでしょうか。動画を見てる途中ですが疑問に思いました。

    • @SekaChan
      @SekaChan  Рік тому

      sukeさん、コメントありがとうございました。
      この動画で扱っているプログラムでは、「this.」はつけなくても大丈夫です👍
      (次の応用編では「this.」が必要な場面が出てきます)
      「public」などのアクセス修飾子は、本来は付けるべきですね。
      どんな修飾子があるかやその使い分けについては、1:38:33~のカプセル化を参照してください。

  • @user-hx3wg5im4f
    @user-hx3wg5im4f Рік тому +1

    interfaceで定義して、Implementsする(つまり関数method)にしないと確かに設計図クラスになる記述部分は、動作しませんね。結構実際にコードをうち込んで実行するとエディターが間違いを指摘してくれるので、勉強になります。

    • @SekaChan
      @SekaChan  Рік тому

      タダタカサトウさん、コメントありがとうございました。
      そうですね。実際にコードを打ち込みながらエラーと向き合う時間が一番理解が深まると思います。
      この動画が役に立ったようで良かったです✨

  • @user-hx3wg5im4f
    @user-hx3wg5im4f Рік тому +1

    record定義して、配列は多元にしても、一つにしたほうがよいのではないでしょうか?

  • @user-oq4tt7fg9p
    @user-oq4tt7fg9p 5 місяців тому

    1:37:06でstaticのメソッドを呼び出す時には,「オブジェクト.変数(メソッド)」ではなく「クラス.変数(メソッド)」と仰っていましたが、
    自分でコードを確認したところ「オブジェクト.変数(メソッド)」でもインスタンス化したものにはカウンタ変数は問題なく機能していました。
    staticの1番のポイントは「インスタンス化しなくても呼び出せる」という点なのですね。
    インスタンス化してもしなくても共通のものとしてあるという部分が大事だと。(認識間違えていたら教えてください!)

  • @akiper
    @akiper 10 місяців тому +1

    はじめまして菅原先生
    私は20年前に大学時代にjavaを習っていましたが当時は良く分からないまま講義を受けていました。
    その後職業が違い触れてこなかったのですが、どうしても基本情報技術者試験に受かるために午後対策本を購入して平行して勉強中です
    (旧試験4回・新試験1回受験済)午後アルゴリズム問題でどうしても落ちてしまう)あの頃とは変わりプログラミングしやすい環境も出来ているのと、
    どうしてもオブジェクト指向はイメージがし難いので菅原先生の講義を聞きたく拝聴しました。よろしくお願いいたします。
    いきなりプログラムを作れと言われても無理なので最初は写経になってしまってもよいのでしょうか・・・
    (実際にそうなっている・・・・・)

    • @SekaChan
      @SekaChan  10 місяців тому

      まきさん、コメントありがとうございました!
      僕も大学時代に初めてJavaを習いましたが、そのときはまったく分かりませんでしたね‥
      この動画は当時の自分でも分かるように基礎の基礎から説明しているので、ぜひ写経からスタートしてみてください。オブジェクト指向の理解につなげてもらえたら嬉しいです!
      オブジェクト指向とアルゴリズムの考えは別物なので、こちらの動画も見てもらうと試験対策に役立つかなと思います。
      ▼アルゴリズム・フローチャート基礎講座
      ua-cam.com/video/2fh8Pyq-Lc8/v-deo.html

  • @switchtoanotherone
    @switchtoanotherone Рік тому +3

    最後の演習問題について質問です。
    設計図クラスのcountのところだけにstaticを入れて、displayのところにstaticを入れておらず、実行のクラスでもc1.display, c2.display などクラス名ではなかったのですが、答えと全く同じようになりました。この場合はどういうことが起こっているのでしょうか?

    • @SekaChan
      @SekaChan  Рік тому +2

      ケン- calisthenicsさん、コメントありがとうございました。
      (「どういうことが起こっているのか?」という質問なので、アバウトな回答になってしまいますが‥)
      displayメソッドをstaticにしないときは、「インスタンス名.メソッド名」で呼び出すことができます。
      つまり、c1.display()などのような形で呼び出せることになります。
      今回の場合、この呼び出し方でも同じ結果になります。
      この問題で振り返ってほしいのは、「なぜstaticを入れるのか?」ですね。
      diplayメソッドの処理を踏まえると、このdisplayメソッドではstaticを(入れなくても動きますが)入れる方が適切です。
      それはなぜか?を考えてみましょう😄

    • @switchtoanotherone
      @switchtoanotherone Рік тому +1

      @@SekaChan ご丁寧にありがとうございます!もう一度見直してみます!

  • @user-kv6fd2gx5j
    @user-kv6fd2gx5j 2 роки тому +1

    44:53のところで質問です。
    今回のサンプルは菅原さんと一人の方ですが、
    これが何人もの人になると、3行目のオブジェクトの生成がどんどん増えていくのですか?
    例えば今回の菅原さんが100人の名前とかになると、5行目6行目も増えていくと思うのですが
    どうなっていくのでしょう?
    実行用クラスがすごく大きくなってしまうかな?と思いました。
    よろしくお願いします。

    • @SekaChan
      @SekaChan  2 роки тому

      うさ〇さん、コメントありがとうございます。
      何人ものオブジェクトを作るとしたら、オブジェクトの生成や値の代入などがその分増えていくことになりますね。
      (44:53以降のサンプルでいえば、3~6行目が増えていくイメージです)
      ただそれを1つずつ書くと実行用クラスが大きくなってしまうので、for文のような繰り返し文を使って書くことが多いですね。

    • @user-kv6fd2gx5j
      @user-kv6fd2gx5j 2 роки тому

      再質問します。
      for文だと、例えば菅原さん、田中さん、山田さんとかになった場合は、
      固定値ではないのに,for文でどのように書くのですか?
      イメージがわかなかったのですみませんよろしくお願いします。

    • @toeic9047
      @toeic9047 Рік тому +2

      @@user-kv6fd2gx5j 名前が入った配列を使うと思います。

  • @pun1game
    @pun1game 7 місяців тому +2

    めちゃくちゃ分かりやすくて感動しました!
    ITスクールの方でもかなり説明が難しそうなところがすんなり理解できて目から鱗です。
    ありがとうございましたm(__)m

    • @SekaChan
      @SekaChan  7 місяців тому

      ぷにさん、コメントありがとうございました!
      たしかにここは説明が難しいところですね。
      オブジェクト指向が分かればいろいろと応用が利くので、この動画が理解につながって良かったです😄

  • @Teach_me_English.
    @Teach_me_English. 4 місяці тому

    上手く設計できるようにはどうしたらいいんだろう
    後から変えるときに、そんなことは想定してなかったとよくなる

  • @Mugio_1126
    @Mugio_1126 Рік тому +1

    毎日動画を視聴し、勉強させていただいています。
    ありがとうございます。
    一つ質問させてください。インスタンス化をするときですが、例題3-3では下記①のように記載していただいていると思います。
    ①Student stu1 = new Student();
    ですが、下記②のように先頭の違うクラス名でインスタンス化する場合があるのでしょうか。
    また、どういう動きをするのか教えていただけると幸いです。
    ②Teacher stu1 = new Student();

    • @Mugio_1126
      @Mugio_1126 Рік тому +1

      自己解決しました。ありがとうございます。これからも視聴続けます!

    • @SekaChan
      @SekaChan  Рік тому

      コメント&追伸ありがとうございました!
      自己解決できて良かったです。これからも一緒にがんばっていきましょう!

  • @majoreality3810
    @majoreality3810 11 місяців тому +1

    わかりやすい動画ありがとうございます!すみません、24:28のところですが、setScoreメソッドの前半部分のなみかっこ忘れてます。

    • @SekaChan
      @SekaChan  11 місяців тому

      コメントありがとうございました!
      たしかにsetScoreメソッドの { を忘れてしまっていました。
      誤った情報をお伝えしてしまい申し訳ないです。
      取り急ぎ、動画内や概要欄に注釈を入れるなど対応をさせてもらいました。
      改めてご指摘ありがとうございました!

  • @user-en2bv4us2t
    @user-en2bv4us2t 8 місяців тому +1

    すごいよかった!基礎的な数学の解説してるゆくイロスクールさんとコラボしてほしいです!!

    • @SekaChan
      @SekaChan  8 місяців тому

      あいあいさん、コメントありがとうございました!
      そろそろ誰かとコラボできたら良いなと思ってたので、コラボ先のリクエストはありがたいです😄

  • @user-ml5uh6xj1i
    @user-ml5uh6xj1i Рік тому +1

    VisualStudio開発環境下で、C#言語によりWindows GUIアプリの開発などの経験がありGUI部分は専用デザイナーにより楽に素早く開発出来ます。最近JAVAに興味をがあって、このチャンネルのお世話になっています。JAVA Eclipse 環境で同等の環境が構築できるようなのですが、環境構築方法、GUIアプリ開発講座などの動画を発信して頂ければ思い投稿しました。宜しくお願いします。

    • @SekaChan
      @SekaChan  Рік тому

      半田富次さん、コメントありがとうございました!
      GUIアプリの開発は作った成果が目に見えて分かるので、すごく面白いですよね😄
      WindowsのGUIアプリの開発講座については、他の視聴者さんからもリクエストが集まったら動画化を検討してみます。

  • @user-fm3py3rt5b
    @user-fm3py3rt5b 3 місяці тому

    とても分かりやすくスッと入ってくる講義でした!
    1点ご教示頂けると嬉しいのですが、最後のstaticの演習時にcountにstaticをつけることは理解なのですが、displayメソッドにもstaticをつける理由はなんでしょうか?
    実際にコードを実行してもcountにだけstaticつけても回答の通りになりましたのでますますわからなくなってしまいました。(変数の値さえ保持できればよいと思っています。)
    教えていただけますと幸いです。

    • @SekaChan
      @SekaChan  3 місяці тому

      たしかに最後の演習問題では、display()メソッドにstaticをつけなくても回答の通りになりますね。
      ただ、できればstaticはつけておいた方が良いです😄
      なぜかというと、Car4クラスのオブジェクトを作っていなくてもdisplay()メソッドを呼び出せるようにするためですね。
      staticをつけていない場合、DriveCar4.javaでオブジェクトを作る前にdisplay()メソッドを呼び出そうとするとコンパイルエラーになってしまいます。

    • @user-fm3py3rt5b
      @user-fm3py3rt5b 3 місяці тому +1

      ありがとうございます!なるほど、オブジェクトを作成しなくても呼べることに意義があるということですね。@@SekaChan

  • @user-qe3jw8wz8b
    @user-qe3jw8wz8b 3 місяці тому +1

    オブジェクトの使い方のところで質問があります
    classStudentの8行目から名前と英語と数学の点数を出す処理が行われています。一方でclassStuSampleでも8行目から平均点を出す処理が行われています。なぜ2つの画面に分けて処理をし、画面に出すのかが動画を何周してもわかりません。また分ける基準なども教えていただきたいです
    よろしくお願いします

    • @SekaChan
      @SekaChan  3 місяці тому

      THANKSコメントありがとうございました!
      まず、画面に表示する System.out.println() は、プログラムのどこからでも呼び出して実行できます。
      2章までのサンプルのようにすべての処理をmainメソッド内に書くこともできますが、処理をまとめて別のクラスに抜き出すこともできるわけですね。
      そうやって作ったのが、サンプルの display() や setScore(~)、getAvg() です。
      そうするといろんなところから呼び出して利用できるようになり、3-1や3-2で解説したようなメリットがあります。
      「分ける基準」は特に決まっていませんが、再利用したいかどうかは1つの基準になるかなと思います。

  • @user-fp1gm6ct2c
    @user-fp1gm6ct2c Рік тому +1

    お世話になっています。50才オーバーで学習を始めた初学者です。 メンバ変数と引数受取について質問させてください。 31分ごろの設計クラスにある 引数の受取り void setScore(int eng, int math)  その後、メンバ変数へ代入 engScore = eng;  となっていますが、 直接引数受取にメンバ変数は使用できないのでしょうか? 例えば、void setScore(int engScore) のような記述。実際そのように書き替えて実行してみましたが結果はNGでした。 初歩的な質問だとは思いますが、動画を見返しても理解できない状況に陥っています。ご回答頂けるとありがたいです。

    • @SekaChan
      @SekaChan  Рік тому +1

      永尾社長さん、コメントありがとうございました!
      引数の名前にメンバ変数の名前を使うことは可能ですよ👍
      そのほうが引数の意味合いが見た目で分かるようになるので、現場でもよく使われる書き方です。
      ただ、メソッドの中で「this」というキーワードを使うことになります。
      「this」は4章で出てくるキーワードなので、もし興味があればこちら( ua-cam.com/video/aecDJ0yN1oY/v-deo.html )を見てみてください。

    • @user-fp1gm6ct2c
      @user-fp1gm6ct2c Рік тому +1

      @@SekaChan 早速のご回答ありがとうございます。 なるほど this ですね。 4章をチェックします。

  • @_sachu6633
    @_sachu6633 Рік тому

    int countに既にstaticがあるのになぜ関数displayにstatic必要なのかがわかりません。void displayからstaticを取り除いた場合、どうなるか教えていただけますか?

    • @user-gr3pz1od7t
      @user-gr3pz1od7t 10 місяців тому

      一つもインスタンス化されていないときに0と表示したいからだと思います。staticをつけないとオブジェクトの変数.display()としないと呼び出せないので1以上になってしまいます。あとそれぞれのインスタンスに固有の値ではないので、オブジェクトがdisplay()するよりもクラスがdisplay()する方が認識としては近いと思います。

  • @mugi8684
    @mugi8684 10 місяців тому

    カプセル化の説明にて公開範囲の対象として紹介されている「他」というのは
    具体的にどんなところですか?

    • @SekaChan
      @SekaChan  9 місяців тому

      mugiさん、コメントありがとうございました。
      カプセル化の公開範囲として書いた「他」は、その表の項目にある「同クラス」「同パッケージ」「サブクラス」のいずれにも当たらないものを指します。
      つまり、別パッケージに含まれていて継承関係にないクラスですね。

  • @user-qu5ef3ns8m
    @user-qu5ef3ns8m 11 місяців тому +1

    驚くほど分かりやすかったです…ありがとうございます!(´▽`)

    • @SekaChan
      @SekaChan  11 місяців тому +1

      コメントありがとうございました!
      オブジェクト指向の導入は分かりにくいところなので、そう感じてもらえて良かったです😄

  • @user-lj2jc8zy9h
    @user-lj2jc8zy9h Рік тому +1

    何度もご質問してしまい申し訳ありません🙇‍♂️
    メソッドは菅原先生の説明だと初めてオブジェクト指向で出てきましたが、スッキリわかるjavaという教科書を読んでいるとオブジェクト指向ではなく、一つのテキスト?の中にメソッドの呼び出しをしており、かなり混乱しております。何か良い考え方は無いでしょうか??
    分かりにくい質問で申し訳ありませ🙇‍♂️

    • @SekaChan
      @SekaChan  Рік тому

      さんかめはめさん、コメントありがとうございました。
      メソッドは(オブジェクト指向とは関係なく)処理をまとめるものなので、その書籍のように解説しているケースもありますね。
      僕の動画とその書籍の説明を比べてもらって、分かりやすい説明を理解してもらうのが良いと思います。
      また、実際にプログラムを書いて動かしてみると、より深い理解につながりますよ👍

    • @user-lj2jc8zy9h
      @user-lj2jc8zy9h Рік тому +1

      @@SekaChan
      ご回答ありがとうございます!
      菅原先生の説明の方が分かりやすいので、先生の方を参考にしようと思います笑
      実際に自分でプログラムを書いてみようと思います。
      ありがとうございます!☺️

  • @tgf7658
    @tgf7658 Рік тому +1

    質問1: なぜeclipseを使わないんですか?
    質問2: コードを書く時のキーボートの打ち方を教えてほしいです
    例n.name();の()を書いた右カーソルを押してから;なのかとか

    • @SekaChan
      @SekaChan  Рік тому

      tっgっfっぐさん、コメントありがとうございました。
      > 質問1
      eclipseを使うとコンテンツアシストやデバッグなどの機能が優れすぎていて、本質が分かっていなくてもプログラムが完成してしまうためです。
      視聴者さんにはJavaの文法や考え方をしっかり理解した上でツールを使いこなしてほしいという思いから、あえてシンプルなエディタのみで講座を進めています。
      > 質問2
      (質問の意味合いが分からない部分がありますが‥)この講座では左から右へと文字入力をしていて、カーソル移動などは特にしていないですね。

  • @reigaisyuri
    @reigaisyuri 4 місяці тому +1

    1:00:46 自分用

  • @user-gr3pz1od7t
    @user-gr3pz1od7t 10 місяців тому +1

    質問です。
    mainメソッドをpublic指定する理由がイマイチ分かっていないです。
    アクセサとかだったらmainメソッドがあるクラスが他のクラスのメソッドを使うからpublic指定しないと使えないということは分かります。
    ただmainメソッドはmainメソッドがあるクラスから呼び出している(=同じクラス)だと思うのでpublic指定しなくてもいいのでは…?と考えています。

    • @SekaChan
      @SekaChan  10 місяців тому +1

      倒置爆破さん、コメントありがとうございました。
      Javaのプログラムが動くときは、Javaの実行環境(JREやJVMとよばれるもの)が最初に【実行クラス名.main(~)】を呼び出す仕組みになっています。
      mainメソッドにpublic指定が必要なのは、クラスの外から呼び出されるためですね。

  • @user-qx4ns9gi8l
    @user-qx4ns9gi8l Рік тому +2

    非常に助かります!
    何でいいねって1回しか押せないんだろう。。

    • @SekaChan
      @SekaChan  Рік тому

      的場康平さん、コメントありがとうございました!
      動画が役に立ったみたいで良かったです!
      コメントでそう伝えてもらえたことが、いいね何回分ものパワーになります💪

  • @user-jq2tg1cm3b
    @user-jq2tg1cm3b Рік тому +1

    現在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」と変更をせずにコンパイル、実行をしてしまいました。
    コンパイル、実行は特に問題なく動作したため、解答を確認した際に間違っていたことに気が付きました。
    呼び出しの際は「クラス名.変数[メソッド]名」ということでしたが、「オブジェクト名.メソッド名」でも呼び出せてしまったのですが、
    こういったものと認識するしかないのでしょうか。本当は内部でこういった動きをしているんだよ。といったことあれば教えていただけると幸いです。

    • @SekaChan
      @SekaChan  Рік тому +1

      けんぴっぴさん、コメントありがとうございました。
      staticメソッドはクラスがもつメソッドなので、本来は「クラス名.メソッド名」の形で呼び出すべきですね😄
      ただ、メモリ内でオブジェクトとクラスの情報は紐づいているため、「オブジェクト名.メソッド名」で呼び出すことができる“ことも”あります。
      開発環境によってはコンパイル時に(推奨しない書き方という意味合いで)エラーになることもあるので、基本的にはクラス名から呼び出す書き方に慣れておけると良いですね。

    • @user-jq2tg1cm3b
      @user-jq2tg1cm3b Рік тому +1

      @@SekaChan
      ご回答ありがとうございます。
      ほかの言語でも感じましたが、やはりできてしまうけど推奨しない。というのは多いですね。
      少しずつ難しくなっていますが使って慣れていきます!
      この度はありがとうございました。

  • @admingzw1686
    @admingzw1686 Рік тому +1

    good

  • @user-yc3bj8mi2g
    @user-yc3bj8mi2g 7 місяців тому +1

    こんなレベルの動画を無料で見れるなんて。

    • @SekaChan
      @SekaChan  7 місяців тому

      西川なな実さん、コメントありがとうございました!
      そう感じてもらえて良かったです😄
      Java関連の動画は入門レベルから実践レベルまで幅広く作ってあるので、ぜひ必要なものを見ていってください!

  • @user-et1cn1ov7s
    @user-et1cn1ov7s 2 місяці тому +1

    34:14

  • @kunime-ji5066
    @kunime-ji5066 11 місяців тому +1

    c言語のように分割コンパイルが必要ないのは楽でいいですね。

    • @SekaChan
      @SekaChan  11 місяців тому +1

      たしかに、c言語のコンパイルって大変でしたよね。
      Javaのコンパイラはいろんな意味で優秀だなぁと個人的に感じてます。

  • @NS-ez7th
    @NS-ez7th Рік тому +1

    すみません。
    javaの教本なども見ているのですが、returnの扱いがどうしても分からず、returnを使った場合、使っていない場合の違いが理解できないです

    • @SekaChan
      @SekaChan  Рік тому

      N Sさん、コメントありがとうございました。
      この動画をどこまで見てくれているのか分からないのですが、25:34 あたりから戻り値やreturn文について解説しています。
      もしまだ見ていなければ、こちらを見てみてください。
      もし見てくれていた場合は、returnを使ったときと使っていないときの「何についての」違いが特に理解できないかを教えてもらえると、より具体的な回答ができるかなと思います🙏

  • @sayaicchiy6318
    @sayaicchiy6318 8 місяців тому +1

    JavaSilver取得のため、活用させていただいてます!
    演習問題のダウンロードファイルですが、3-9>Q にCar 3.javaの回答ファイルが入っておりネタバレ喰らいました笑
    修正しておいていただけると嬉しいです!
    使用PCはmacOS Monterey バージョン12.6.3です

    • @SekaChan
      @SekaChan  8 місяців тому +1

      saya icchiyさん、コメントありがとうございました!
      そして、本当にごめんなさい!!
      せっかく演習に取り組もうって思ってくれたのに、ネタバレしてしまうなんて最悪です‥
      確認しましたが、回答例のプログラムがQフォルダの中に入っちゃっていたんですね。ホントすみません🙏
      回答例を取り除いたデータを再アップしておきました。

  • @SS-lf9hm
    @SS-lf9hm 10 місяців тому +1

    コンストラクタの存在理由はなんでしょうか?
    別になくてもいいんじゃないかな?っと思いました。
    これがないとこういう時に困るっというのが知りたいですm(_ _)m

    • @SekaChan
      @SekaChan  10 місяців тому

      S Sさん、良い質問をありがとうございました。
      たしかに、わざわざコンストラクタを作らなくてもプログラムを作ることはできます。
      ただ、オブジェクトを生成するタイミング(newするとき)に呼び出す仕組みになっているため、自分でset~メソッドを呼び出す必要がなく、オブジェクト内のメンバ変数に値が入っていない状態を防げるメリットもあり、実際はコンストラクタを作るケースのほうが多いですね。

  • @user-Red_Haired1984
    @user-Red_Haired1984 9 місяців тому +2

    有料級どころかU○emyとかの有料講座よりわかりやすいってどういうこと?!

    • @SekaChan
      @SekaChan  9 місяців тому +1

      Red-Hairedさん、コメントありがとうございました!
      そう感じてもらえて良かったです!
      ただ、ここは入門編です。この先のWebアプリ編やDB処理編こそ有料級ですよ👍

  • @CheeseIsPizza
    @CheeseIsPizza Місяць тому +1

    Bronze受かりません。。。

    • @SekaChan
      @SekaChan  Місяць тому

      Bronzeも試験範囲が広いので、受かるにはある程度勉強する必要がありますね。
      特に「プログラムを作って動かすこと」「試験対策の問題を解くこと」を意識してみてください!

  • @678housedrink6
    @678housedrink6 Рік тому +1

    増えましたね。笑

  • @Xcoco113X
    @Xcoco113X Рік тому

    1:09:55 ー

  • @RS-qq1ln
    @RS-qq1ln Рік тому +3

    ありがとうございます!

    • @SekaChan
      @SekaChan  Рік тому

      R Sさん、THANKSコメントありがとうございました!!
      頂いた金額は書籍の購入や動画の改善など、将来の視聴者さんのために使わせていただきますね✨
      こうやって応援してくれる人がいるのはとっても嬉しいし心強いです。
      これからもよろしくお願いします!

    • @RS-qq1ln
      @RS-qq1ln Рік тому +1

      @@SekaChan すごく勉強になります!!ありがとうございます!