John Squirrels
レベル 41
San Francisco

旧レベル06

ランダム グループに公開済み
人のメンバー

Java 開発者のロードマップ

私の友人は、なぜ開発者はいつもこんなに幸せなのか不思議に思っていました。彼女が導き出した答えはシンプルかつ驚くべきものでした。彼らは好きなことをして大金を稼いでいたのです。 ソフトウェア開発者の世界へようこそ。 旧レベル06 - 1

ソフトウェア開発者の給料

開発者の給料についてお話したいと思います。給与がどうなっているのか、どこに働きに行くべきか、どこに行ってはいけないのか。開発者ではなく、自分で謎を解こうとすると、かなり物議を醸すデータが得られるかもしれません。重要な点は、開発者の給与に影響を与える主な要素は資格ではなく、勤務地であるということです。資格レベルが同じであれば、良い職場と悪い職場の差が 2 倍から 10 倍になる場合もあります (!) 資格は一定の瞬間ごとに変わりません。1 か月で 2 倍の資格を取得し、2 倍の報酬を受け取ることはできません。しかし、1か月で職場を変えて2倍の給料を得ることができます。2 か月の間に私の給料は 3 倍になりました (!) – 忘れられない経験です。それでは、どの場所が最適かを調べてみましょう。
  1. 企業の主な事業がソフトウェア開発であるかどうか
  2. 企業がグローバル市場とローカル市場のどちらを志向しているか
  3. 本社はどこにありますか: 先進国または発展途上国
勤務先の都市は関係ないことに注意してください。つまり、バルセロナでの収入がニューヨークの友人の 5 分の 1 である場合、おそらく私が述べた要因が影響していることになります。 

具体的な数字

給与は世界の地域によって異なるため、5 年の経験を持つ上級 Java 開発者の給与を出発点として、それを「最大 5 年」と呼ぶことを提案します。以下のすべての数値は、この金額のパーセンテージとして表示されます。以下に、世界のさまざまな都市における「5 年間の最高」給与の例をいくつか示します。 旧レベル06 - 2以下に、5 年の経験を持つ Java シニア開発者が、勤務する会社に応じていくら稼ぐかを示します。 現在の状況で最も 旧レベル06 - 3旧レベル06 - 4奇妙な点は何ですか? すべてのプログラマーの半数は、1 レベルおよび 2 レベルの企業で働いています。 知りたいのですが、何が問題ですか? 3 レベルおよび 4 レベルの企業には何百もの求人が存在します。これらの企業は、より高い給与と、通常はより良い労働条件を提供することに積極的です。私は Java ジュニアを 2 人知っていますが、1 人は「5 年間の最高」給与の約 3% (レベル 1 企業) で仕事に就き、もう 1 人は「5 年間最高」給与の 30% (レベル 4) で仕事に就きました。では、なぜ減少するのでしょうか? プログラマーに対する需要はオファーを上回っています。給料が安いところでは働かないでください。 結論 1: Java 開発者の平均給与 (経験を問わず) は、「5 年間の最高」給与の 40% ~ 50% です。 結論 2:レベル 1 およびレベル 2 の企業で働いておらず、レベル 3 およびレベル 4 の企業で働いている場合、5 年間の平均給与は「5 年間の最高」給与の約 90% ~ 110% になります。

愚かなことをしなければ達成できること

今すぐプログラミングの独学に取り組み始めると、給与は次のようになります。 旧レベル06 - 5

プラン

0~3ヶ月(学生)

あなたはプログラミングについてほとんど知識がありません。あなたも学校や大学で基礎レベルの勉強をしたことがあるかもしれません。 あなたがしなければならないのは、プログラミングの方法を学び、Java を学ぶことです。 あなたの目標は、レベル 3 以上の企業で Java ジュニア開発者として就職することです。プランの最初の 3 か月間は何も得られません。プログラミング方法を学習しているだけだからです。しかし、始めるのは早ければ早いほど良いです。最良の時期は今です。将来、家族がいて多額のローンを抱えている場合、資格を再取得するのはさらに難しくなるでしょう。間違いを正すためには、少なくとも1年間の通常の生活に必要なお金を確保しておかなければなりません。愚かな間違いをしないでください。

3 ~ 15 か月 (Java ジュニア開発者)

あなたはすでにソフトウェア開発者として働いており、その経験は日々成長しています。リラックスしないでください。オールで休む前にやるべきことがたくさんあります。 あなたがしなければならないことは、中間開発者として必要となるテクノロジーを勉強することです。これは何?世界は常に変化しています。アドバイスをたくさん詰め込みます、そうすれば人生はすべて変わります。ウェブ上でいくつかの求人を見つけて、応募する必要があるものを確認してください。Bruce Eckel 著『Thinking in Java』を必ず読んでください。 Java ジュニア開発者として働き始めた 1 年目の目標は、Java ミドル開発者のレベルに到達することです。それが簡単だとは誰も言いませんが、目標志向の人であればそれは可能です。給料は「5年間の上限」の40%(サンフランシスコとロンドンは5万ドル、バンガロールは6千ドル)まで瞬時に増額されます。

2 年制プログラミング (Java ミドル開発者、レベル 1)

昨年は良い仕事をして、今では Java 中間開発者になりました。上級 Java 開発者の給与の 50% を稼いでかなり裕福な生活を送ることができます。あなたは職場でいくつかの重要なタスクを与えられており、経験は大幅に増加します。2 ~ 3 年で Java 上級開発者のレベルに到達します。急ぐ必要はない。いずれにせよ、給与が大幅に上がることはありません。 あなたがする必要があるのは、 McConnell's Code Complete を読んでデザイン パターンを学ぶことです。コードの品質とチームのスキルを完璧にします。コンピュータープログラミングに関する本を毎月1冊読むというルールを作りましょう。そうすれば、4 年後には他の本よりも 50 冊賢くなっているでしょう。先延ばしにしないでください。これ以上自由な時間は得られません。さらに、おそらく家族ができるか、家族がいる場合はさらに大きくなるでしょう。 あなたの目標上級 Java 開発者として専門とするテクノロジーをいくつか選択することです。それらすべてを学ぶことはできません。そして、1 つの専門分野の第一人者になるのは常に良い決断です。 旧レベル06 - 6

3 次元のプログラミング (Java ミドル開発者、レベル 2)

あなたは現在、経験豊富な中間開発者であり、上級開発者になることを考えています。それは快適であると同時に名誉でもあります。給与が「5 年間の最高額」の 60% (バンガロールで 10,000 ドル、キエフで 25,000 ドル、ベルリンで 40,000 ドル、ニューヨークで 80,000 ドル) を超えています。この瞬間から、あなたのような専門家の需要に応じて、オファーが上がります。いつでも数日以内に仕事を見つけることができ、収入が今より下がることはほとんどありません。もちろん、愚かなことをしなければの話だが。 あなたがしなければならないことは、自分が選んだテクノロジーを学び続けてください。より良く働きましょう。雇用主のためではなく、あなた自身のためです。有望なテクノロジー (この記事を書いている時点では BigData など) に関わるプロジェクトへの参加を申請してください。いずれにせよ、オフィスで 1 日 8 時間を過ごすことになるのですから、そのためにもう少しお金を稼いでみてはいかがでしょうか。そして、さらに重要なのは、将来必要になる最も貴重な経験です。 あなたの目標は新しい仕事を見つけることです。良いチームは必ず見つかります。新しいプロジェクトやテクノロジーに直面することになります。椅子に根付く必要はありません。まだ第 3 レベルの企業で働いている場合は、第 4 レベルの企業への就職を検討してください。

プログラミング 5 年目 (Java 上級開発者、レベル 1)

これであなたは上級開発者になりました。もしかしたら、あなたはそれに値しないと感じているのかもしれません。それでも、おめでとうございます。あなたが今その地位にふさわしいかどうかは問題ではなく、将来その地位にふさわしい人になることがすべて重要です。良い仕事に就き、必要なレベルまで成長した後はその逆の方が良いということに同意していただけると思います。月に1冊本を読むという私のアドバイスを忘れていないでしょうか?今ではどんな学生もあなたの知識とスキルを羨むでしょう。より具体的に言うと、彼は彼らのために祈っているでしょう。考えてみてください。あなたは「5 年間の最高」給与の 90% 近くという、かなりの収入を得ています。あなたはおそらくまだ若いでしょう。世界はあなたの足元にあります。 あなたがしなければならないことは、選択したテクノロジーを再評価します。おそらく、専門分野を変更する必要があります。世界は変化し、テクノロジーも変化し、あなたは過去 2 年間でかなりの知識を獲得しました。あなたが今選択することは、あなたにとって今後数年間の見出しになるでしょう。お気に入りのテクノロジーを選択する時が来ました。 あなたの目標は、成長の方向性を選択することです。それらは数多くあり、誰もすべてに名前を付けることはできませんが、今すぐ選択する必要があります。今日小さな変化を起こせば、将来的には大きな変化が得られるでしょう。

プログラミング 6 年目 (Java 上級開発者、レベル 2)

あなたは自分の将来を決め、夢の実現に向けて取り組んでいます。前進したいという願望とともに正しく選択された方向性 - そして結果は長くは続かないでしょう。おめでとう。夢をかなえた人がまた一人増えたことを嬉しく思います。一つの深遠な真実がある。人々は、1 年で達成できることを過大評価し、5 年で達成できることを過小評価することがよくあります。5年前を振り返ってみてください。それはそうです。 あなたがしなければならないのは、賢明でない決断を避け、怠惰にならないことです。 あなたの目標は、方向を選択して前進することです。それともここで終わると思いましたか?卒業を思い出してください。それは終わりではなく、単なる始まりです。

あなたの将来の専門分野

旧レベル06~7技術スペシャリスト (上位ブランチ)、管理者 (下位ブランチ)、または雇用された専門/独立コンサルタント (中位ブランチ) として成長することができます。それはすべてあなたの好み次第です。

Java開発者のキャリア

開発者のキャリアは他のキャリアとは異なります。良いお金を稼ぐためにマネージャーになる必要はありません。シニア開発者の方がマネージャーである上司よりも収入が高いことはよくあります。経験を積めば積むほど、上司との仕事関係は「上司と部下」から「スターとマネージャー」へと変化していきます。開発者は自分の価値を知って甘やかされて、プロジェクトや欠員を選びます。自分たちのために幸せになりましょう。では、このように高く評価され、世界規模で人気のある開発者になるためには何が必要でしょうか? 最も需要の高い新しいテクノロジーに関して豊富な経験を積んでいる必要があります。 これを達成するにはどうすればよいでしょうか? 下記参照。 旧レベル06~8開発者としての仕事に就くとすぐに、2 つのことが起こり始めます。それでも、常に表示されるわけではありません。 1. 実際のプロジェクトで経験を積み、急速に成長します。この仕事に 1 年間従事すれば、大学で 5 年間勤務するよりも多くの経験を積むことができます。掲載されている求人には「Java 開発者で 3 年の経験が必要」と書かれているほど、経験は重要な問題です。 2. 新しいテクノロジーを 1 日 8 時間勉強し、その対価として十分な給料をもらっています。この事実を過大評価することはできません。場合によっては、取得したスキルが非常に価値があるため、それを取得するために無料で働いたり、お金を払ったりすることもできます。取り組むプロジェクトを賢明に選択すれば、目まぐるしいソフトウェア開発者のキャリアを築くことになります。 それで…何を選ぶべきですか? どのテクノロジーが役立つかわからないため、「好き嫌い」や「ファッションのトレンド」で選択し始めることがよくあります。幸運に恵まれるかもしれないし、そうでないかもしれない。ですので、事前に目的地を決めておいた方が良いでしょう。プログラマーにとって進化する方法はたくさんあるので、わかりやすくするために、そのうちのいくつかを選択し、今後の状況についての私のビジョンを書きます。このパターンを強固なものだと考えないでください。それは、明確にするために提示されたものを単純化したものです。

創業200年の開発者

何よりもプログラミングが好きなら、シニア開発者、次に技術リード開発者、そしてアーキテクトになるのがあなたの方法です。そうすれば、50 年以上開発者として働くことができます。ほとんどの場合、シニア開発者やテックリード開発者の給与はマネージャーの給与を上回ります。それで、お金の価値を手に入れましょう。

マネジャー。あなたは他の人たちとは違って幸運です

あなたは敵のほうへ行ってしまいました。冗談だ。優れた組織スキルを発見した場合は、チーム リーダー、次にプロジェクト マネージャーになります。それはあなたに部門長になって自分のビジネスを開くチャンスを与えます。それがあなたが望むことですよね?

家は心のあるところです

旧レベル06~9すでに家族を持っている場合は、おそらく、経済力の高い国で素敵で静かな生活を送りたいと考えているでしょう。おそらく、カナダ、米国、スイス、さらにはオーストラリアへの移住を検討しているかもしれません。あなたには優れたスキルがあり、需要のある職業があります。皿洗いから始める必要はありません。あなたは Java 上級開発者としてスタートします。おそらく、かなり稼いでいるのではないでしょうか。悪くないですよね?

ナポリを見ても死なないでください。

あなたにはまだ家族がいませんが、旅行が大好きです。oDesk がすべてです。顧客を見つけて、1 時間あたり 20 ~ 50 ドルの料金に同意し、ラップトップを持って出かけましょう。あなたの給料は世界中のどこにでも住むのに十分です。今すぐ夢の実現を始めてみませんか?

プログラムしたくない、私は女の子です。

あなたが女の子の場合、産休を取る必要があるかもしれません。性差別的なジョークのように聞こえますが、実際その通りです。それでも、そこには多くの常識が含まれています。おそらく、産休を取得すると、(社会的保護が充実している国では)多額の産休手当を受け取ることができるでしょう。給料がゼロの会社もあれば、高額な給料を払う会社もあります。私の学生の一人は、産休を取って年収の3分の1を受け取りました。そしてこれは 2009 年春、雇用削減の最中に起こりました。そして 1 年半後には、少なくとも中間開発者になって戻ってくるかもしれません。

レベル6

旧レベル06~10

1 エリー。オブジェクトの可視性。ヌル

- やあ、アミーゴ! - こんにちは、エリー!今日は何か面白いことを教えてくれませんか?- 今日はオブジェクトの寿命 についてお話します。オブジェクトが作成された後、少なくとも 1 つの変数にそのアドレスが格納される (少なくとも 1 つのオブジェクト参照が存在する) まで、オブジェクトは存在 (存続) します。参照がなくなった場合、オブジェクトは消滅します。例: 旧レベル06~11- オブジェクト«cat Tommy»は、作成された瞬間から 1 行のみに存在します。次の行では、その参照を格納する変数のみが null に設定され、Java 仮想マシンはオブジェクトを破棄します。 - 作成後のオブジェクト«cat Sammy»は変数cat1に格納されます。というか、cat1 はオブジェクトへの参照を保存します。次に、この参照の下の数行が変数 cat2 にコピーされます。その後、別のオブジェクトへの参照が cat1 に保存され、«cat Sammy» への参照は cat2 にのみ残ります。最後に、メソッド main の最後の行で、オブジェクトへの最後の参照が null に設定されます。 - オブジェクト«cat Maisy»は、作成された瞬間から一行のみに存在します。次の行では、変数 cat2 に別の値が割り当てられ、«cat Maisy» への参照が失われます。オブジェクトは到達不能になり、ガベージ (死んだ) と見なされます。 - オブジェクト«cat Ginger»は、作成された瞬間からメソッドが終了するまで存在します。実行時にメソッドが終了すると、変数 cat1 が破棄され、その後オブジェクト «cat Ginger» も破棄されます。 - それは明らかだ。 - ただし、何らかのメソッドでオブジェクト Cat を作成し、その参照をクラス変数に保存した場合、別の既存のオブジェクトからの参照がある限り、Cat は存在​​します。- 通常、オブジェクトはすぐには破壊されません。Java 仮想マシンは、未使用のオブジェクトを削除するためにガベージ コレクションをアクティブにすることがあります。それについては後ほどお話します。- 一部の変数にオブジェクト参照の保存を停止させたい場合は、その変数にnullまたは別のオブジェクトへの参照を割り当てることができます。

2 教授、ガベージコレクション

旧レベル06~12- やあ、アミーゴ! Java のガベージ コレクションに関する役立つリンクは次のとおりです。これは確かに私の優れた講義ではありませんが、これで十分です: Java ガベージ コレクションの基礎

3 エリー、決めて

- またあったね!ここで、メソッドFinalize()について簡単に説明します。このメソッドは、オブジェクトが破棄される前に、オブジェクト上の Java 仮想マシンによって呼び出されます。実際、このメソッドはコンストラクターの逆です。このメソッドでは、オブジェクトによって使用されているリソースを解放できます。- クラス Object にはこのメソッドがあるため、すべてのクラスにこのメソッドがあります ( Java のすべてのクラスはクラス Object から継承されているとみなされ、そのメソッドのコピーが含まれます)。クラスに Finalize() メソッドを記述すると、このクラスのオブジェクトが破棄される前にこのメソッドが呼び出されます。例: 旧レベル06~13- わかりました。 - しかし、一つだけ事があります。Java 仮想マシンは、このメソッドを呼び出すかどうかを自分で決定します。ほとんどの場合、メソッド内で作成され、その終了後にガベージとして宣言されたオブジェクトは、finalize() メソッドを呼び出すことなく、ただちに破棄されます。このメソッドは、外部 (JVM の外) リソース割り当てを制御するもう 1 つの手段です。オブジェクトを破棄する場合は、使用されている外部リソースをすべて解放し、保存されている参照をリセットすることをお勧めします。この方法の利点とその作業の詳細を10または20のレベルで説明します。その間、次の 2 つのことを知っておく必要があります。そのようなメソッドが存在すること、そして (驚くべきことに! ) 常に呼び出されるとは限らないことです。

4 Elly、オブジェクトの存続期間

- オブジェクトの有効期間について、興味深いことをいくつかお話ししたいと思います。Java では、オブジェクトを誤って失うことは非常に困難です。オブジェクト参照がある場合、それはそのオブジェクトが確実に生きていることを意味します。 - オブジェクト参照の内部には、メモリ内のこのオブジェクトの番号、つまりアドレスが格納されます。この数値を変更したり、増やしたり減らしたりすることはできません。メモリ内にアドレスがあるだけでは参照を作成できません。新しいオブジェクトを作成し、その参照を変数に割り当てることのみが可能です。これが新しい参照を取得する唯一の方法です。 - そうか。つまり、すべてのオブジェクト参照を null (消去) に設定すると、オブジェクト参照を取得してアクセスできなくなります。 - はい。しかし多くの場合、その逆が当てはまります。未使用のライブ オブジェクトが多すぎるのです。ほとんどのプログラムは、実行時に数十のオブジェクトを作成し、それらを異なるリストに保存しますが、それらのリストをクリーンアップすることはありません。 -ほとんどの場合、プログラマは不要なオブジェクトに「削除済み」というラベルを付けるだけです。彼らがリストから削除されることを誰も気にしません。非常に大きな Java プログラムは肥大化する傾向があり、メモリ内に残された未使用のオブジェクトがますます増えています。- それで全部です。今後は、未使用の物品とその適切な処分に常に注意を払うようにしていきます。 -ОK、ありがとう。参照に関するいくつかのことを解決しました。

5 Diego、オブジェクト存続期間タスク

- やあ、アミーゴ! 以下にいくつかのタスクを示します。
タスク
1 1. Catクラスのfinalize()メソッド
Catクラスにメソッド protected void Finalize() throws Throwable
3 2. Cat クラスと Dog クラス、および各クラスの Finalize() メソッド
Cat クラスと Dog クラスのそれぞれに、オブジェクトが破棄されたというメッセージを画面に表示するFinalize()メソッドを記述します。
3 3. Cat クラスの 50,000 個のオブジェクトと Dog クラスの 50,000 個のオブジェクト
Cat クラスの 50,000 個のオブジェクトと Dog クラスの 50,000 個のオブジェクトをループ内に作成します。(Java 仮想マシンは未使用のオブジェクトを破棄するため、メソッドFinalize() が少なくとも 1 回呼び出されます)。
4 4. Cat カウンタ
Cat クラスのコンストラクタ [public Cat()] で、cat カウンタ (同クラスの静的変数 catCount) を 1 増やします。finalize()メソッドで1 減らします。

6 Elly、静的クラスとメソッド

- ここに新しい興味深いトピックがあります。静的変数と静的メソッドについて説明したいと思います。 - ああ、静的変数についてはすでに聞きました。静的メソッドについても同様だと思います。しかし、もっと詳細が知りたいです。 -クラスで変数を宣言するときは、これらの変数が単一の共有インスタンスで作成されるかどうか、またはオブジェクトごとに変数のコピーを作成する必要があるかどうかを指定します。デフォルトでは、このクラスのオブジェクトごとにクラス変数の新しいコピーが作成されます。これは次のようになります。 旧レベル06~14- 変数cat1.namecat2.nameは同じクラス Cat で宣言されていますが、異なるオブジェクトにバインドされているため、異なる値が格納されます。 - それは明らかだ。 - 静的変数は単一のインスタンスに存在します。クラス名を使用してアクセスする必要があります。 旧レベル06~15- これも明確です。 - クラスメソッドも 2 つのカテゴリに分類されます。通常のメソッドはオブジェクトに対して呼び出され、このオブジェクトのデータにアクセスします。 静的メソッドにはオブジェクト参照がないため、そのようなアクセス権はありません。静的メソッドは、このクラスの静的変数または他の静的メソッドにアクセスできます。 - 静的メソッドは非静的メソッドまたは非静的変数にアクセスできません。 - なぜそうなのか? - すべての通常のクラス変数はオブジェクト内に配置されます。どのメソッドも、そのオブジェクトへの参照がある場合にのみ、そのような変数にアクセスできます。このような参照は静的メソッドには渡されません。 ――通常の方法ではどうでしょうか? -通常のメソッドには、このメソッドが呼び出されるオブジェクトへの隠し参照が渡されます。この参照を格納する変数はthisと呼ばれます。したがって、メソッドは常に独自のオブジェクトのデータを取得したり、同じオブジェクトの別の非静的メソッドを呼び出したりすることができます。- null がオブジェクト参照ではなく静的メソッドに渡されます。したがって、静的メソッドは非静的変数やメソッドにアクセスできません。バインドされているオブジェクトへの参照がないだけです。 - そうか。 - これが、通常の非静的メソッドの動作方法です。 旧レベル06~16- そして、静的メソッドの動作 旧レベル06~17方法です。 - 変数またはメソッドは、キーワード static で宣言されている場合、静的です。 - そして、そのような方法が非常に限定されている場合、その方法には何の利点があるのでしょうか? - このアプローチには利点もあります。- まず、静的メソッドや変数にアクセスするためにオブジェクト参照を渡す必要はありません。- 第二に、変数が唯一のものであることが必要な場合があります。たとえば、変数 System.out (System クラスの静的変数) のように。- そして 3 番目に、オブジェクトを作成する前にメソッドを呼び出す必要がある場合があります-どんな機会に?- main メソッドが static と宣言されているのはなぜだと思いますか? クラスがメモリにロードされた直後、オブジェクトを作成できる前に 呼び出すには。

7 Risha、静的クラスとメソッド

-静的メソッドに加えて、静的クラスもあります。このケースについては後で検討しますが、ここではその例を示します。 旧レベル06~18- クラス Cat のオブジェクトは必要なだけ作成できます。単一のインスタンスに存在する静的変数とは異なります。- クラス宣言前の修飾子staticの主な目的は、クラスCatとクラスStaticClassExampleの間の関係を維持することです。一般に、クラス Cat はStaticClassExample オブジェクトにバインドされておらず (非表示の参照を持たず) 、通常の (静的ではない) StaticClassExample 変数にアクセスできません。 - 他のクラスの中にクラスを作成できるということですか? - はい。Java はこれを可能にします。さて、あまり考えないでください。後ほど、その他のことについて説明します。そうすれば、すべてが少し簡単になるでしょう。 - そうだといい。

8 Diego、静的メソッドに関するタスク

- やあ、アミーゴ! 以下に、静的メソッドに関する興味深いタスクをいくつか示します。
タスク
1 1. Catクラスと静的変数catCountクラスCatに
静的変数int catCountを記述します。コンストラクター [ public Cat() ] を作成します。このコンストラクターでは、指定された変数を 1 ずつ増やす必要があります。
2 2. 静的メソッド: int getCatCount() および setCatCount(int)
クラス Cat に 2 つの静的メソッドを追加します: int getCatCount( ) およびsetCatCount(int)。これらを使用して、猫の数 (変数 catCount) を取得/変更できます。
3 3. クラス Util
静的メソッドdouble getDistance(x1, y1, x2, y2)を実装します。点間の距離を計算する必要があります。double Math.sqrt(double a)メソッドを使用して、渡されたパラメーターの平方根を計算します。
4 4. ConsoleReader クラス
ConsoleReader クラスを作成します。これには 4 つの静的メソッドがあります。
-キーボードから文字列を読み取るString readString()
-キーボードから数値を読み取るint
readInt() -キーボードから小数を読み取るdouble readDouble()
- void readLn () Enter キーを押すのを待ちます [readString() を使用]
5 5. StringHelper クラス
StringHelper を作成します。このクラスには 2 つの静的メソッドがあります。
- String multiply(String s, int count) は、文字列 s の繰り返し回数を返します。
- String multiply(String s) は、 5 回繰り返された文字列 s を返す必要があります。

例:
アミーゴ → アミーゴアミーゴアミーゴアミーゴアミーゴ

9 教授、オブジェクトの静的スコープとライフタイム

旧レベル06~19- またまた私です。残念ながら、今日はリンクを提供できません。あの素晴らしい講義はどこかに消えてしまいます。申し訳ありませんが、今日はご自身でやらなければなりません。でも、エリーとリーシャにもっと耳を傾けたほうがいいよ、彼らはいつでもあなたに何かを教えてくれるから。それでも、これを試してみてください:オブジェクトのライフサイクル

7月10日

- やあ、アミーゴ! 今日は素晴らしい仕事をしました。だからこそ、これ以上はあげられないのです。さあ、座ってください、ショーが始まります。

11 キャプテンリス

- こんにちは、兵士さん! - おはようございます! - 素晴らしいニュースがあります。スキルを強化するための簡単なチェックを次に示します。毎日やれば、すぐにスキルが向上します。タスクは、Intellij IDEA で実行するように特別に設計されています。
Intellij Idea で実行する追加タスク
1 Cat クラスと静的変数 catCountクラス Cat に
静的変数public int catCountを記述します。コンストラクター [public Cat()] を作成します。猫 (新しいオブジェクト Cat) を作成するたびに、静的変数catCountを 1 ずつ増加させます。10 個のオブジェクト Cat を作成し、変数catCountの値を表示します。
2 2. 動かない猫
  1. Cat クラスにパブリック静的変数cat (ArrayList<Cat>)を追加します。
  2. 猫 (新しいオブジェクト Cat) を作成するたびに、この新しい猫を変数catに追加します。10 個のオブジェクトを作成します。
  3. printCats()メソッドはすべての猫を表示する必要があります。メソッドでは変数 cat を使用する必要があります。
ヒント: cat
変数 を作成するには、次のコード行を使用します。public static ArrayList<Cat> cat = new ArrayList<Cat>();
3 3. 1 つの静的修飾子を移動する
コードがコンパイルされるように、1 つの静的修飾子を移動します。
4 4. 静的キーワードの最小数 コードをコンパイルしてプログラムを正常に完了するには、
最小数の静的キーワードを追加します。
5 5. 新しいアイデアはありますか? 考えましょう...
  1. クラス Solution にパブリック静的クラス Ideaを作成します。
  2. 空ではないメッセージを返すメソッドpublic String getDescription()をクラス Idea に記述します。
  3. Solution クラスで静的メソッドpublic void printIdea(Idea idea)を作成し、アイデアの説明を表示します。これがメソッドgetDescription()の返しです。
6 6. KissMyShinyMetalAss
KissMyShinyMetalAss という名前のクラスを作成します。このクラスのオブジェクトを作成し、画面に表示します。
7 7. 3 つの静的変数名
3 つのパブリック静的変数を書き込みます: String Solution.nameString Cat.nameString Dog.name
コメント
  • 人気
  • 新規
  • 古い
コメントを残すには、サインインしている必要があります
このページにはまだコメントがありません