ディレクトリ
20182324 2019-2020-1「データ構造とオブジェクト指向プログラミング、」最初の4週間の学習概要
コンテンツの概要を学びます
サイクルにより、1、
2、UMLモデリング
オーバーロード3、方法
、カプセル化、継承、および重合など4、
5、単純な反復子(イテレータ)及び使用方法
6を、インタフェース(インタフェース)製剤の使用
教科書の学習と問題解決のプロセス
- 質問1:文字ができません
nextChar()
入力されました 問題解決方法1:スキャナは、クラスではない
nextChar()
方法を使用することができ、charAt(int)
指定された文字の位置を返すように。- 質問2:コードをプッシュする表示Gitのプッシュ「『XXXX』をアクセスできません:ホストを解決できませんでした:gitee.com」
問題2ソリューション:調査が原因仮想マシンのネットワークに開いています。
プロセスで解決コードのデバッグおよび問題
- Q:最後に小数点以下が0のとき、出力フォーマット「#は###」に自動的に省略されています
- 問題解決方法:「#」は、出力をフォーマットされていませんあなたが使用することができ、ゼロフットプリントである「#0.000を。」
他の問題は、ブログに記録されている実験レポート
コードホスティング
(ファイル名を指定して実行は、スクリーンショットのstatistics.shスクリプトを結果)
先週試験間違った質問の概要
オブジェクトの動作は、オブジェクトのによって定義さ
A.インスタンスデータ
B.コンストラクタ
C.可視性改質
D.方法
E.上記の全て
解析:メソッドは、それがメッセージを渡されたときに、オブジェクトがどのように反応するかを指示します。各メッセージは、メソッドとして実装され、そしてこの方法は、メッセージが渡されたときに実行されるコードです。コンストラクタは、次のいずれかの方法であるが、すべてのメソッドは、動作を指示する組み合わせ。可視性改質剤は、間接的に、オブジェクトのパフォーマンスに影響を与えません。オブジェクトのカプセル化を維持するために、我々はその1を除いて、次のすべてをしますか?
A.インスタンスデータプライベートください
B.は、インスタンスデータにアクセスし、操作するクラスのメソッドを定義する
クラスのメソッドパブリックくださいC.を
D.がクラス決勝ください
E.に上記維持カプセル化のすべてを
解析:カプセル化は、クラスは、データとデータを操作するために必要なメソッドの両方が含まれていることを意味します。インスタンス・データはプライベート作られ、方法は、インスタンスデータにアクセスし、操作するために定義されるように適切にカプセルを保持するために、インスタンス・データは、クラスの外部から直接アクセスすべきではありません。他のクラスのオブジェクトを使用できるように、更に、インスタンスのデータにアクセスして操作する方法が公開されています。予約語は、「最終的には」継承を制御するために使用し、カプセル化とは何の関係もありません。クラスのコンストラクタは、通常、定義され
たオブジェクトが初期化される方法A.を
オブジェクトがインターフェースされる方法B.
C.にクラスのインスタンスデータの数
D.クラス内のメソッドの数
インスタンスデータの外側にアクセス可能である場合E.をオブジェクトを直接
解析:コンストラクタは、オブジェクトを「構築」するために使用されるべきである、すなわち、インスタンスデータの初期値を設定します。これは必須ではないが、一般的に行われています。オブジェクトのインタフェースは、インスタンスデータおよび方法に使用される可視改質によって決定されます。Javaクラスのインスタンスデータ
A.は、プリミティブ型(例えば、整数、浮動小数点、文字)に限定されている
B.文字列に制限され
C.オブジェクト(例えば、文字列、他のプログラマによって定義されたクラス)に制限され
D.プリミティブであってもよいですタイプまたはオブジェクトが、オブジェクトがプライベートであることを定義する必要があります
E.は、プリミティブ型またはオブジェクトかもしれ
解析:インスタンスデータは、クラスを構成し、プリミティブまたはオブジェクトかどうかを利用できる任意の型であってもよいエンティティであり、およびパブリックまたはプライベートでも。インスタンスデータとしてオブジェクトを使用することで、他のクラスに基づいて構築されるクラスを許可します。クラスが持つ関係として知られている他のクラスのインスタンスであるデータを有するこの関係。(最も単純な形態に合理的に減少させるために)減少させる方法とともに、int型の一対として有理数を表すように設計された合理的なクラスを検討GCD(二INT者の最大公約数を見つけるために)、ならびに添加のための方法、減算、乗算、除算。なぜ削減し、GCDの方法は、プライベートであると宣言しなければなりません。
A.彼らが使用されることはありませんので
、彼らは唯一の合理的な内部メソッドから呼び出されますのでB.を
、彼らは唯一の合理的なのコンストラクタから呼び出されるのでC.
彼らはRationalのインスタンスデータの任意の使用していないのでD.
それのでE.をタイプミスであり、それらはpublicとして宣言する必要があります
解析:プライベートであると宣言されたクラスのすべての項目は、彼らがインスタンスデータやメソッドであるかどうか、そのクラス内のエンティティにのみアクセス可能です。これらの2つの方法が唯一の合理的なの(コンストラクタを含む)他のメソッドから呼び出されるので、この場合、彼らはより大きな程度に情報隠蔽を促進するため、民間と宣言されています。この方法は、GCDメソッドを呼び出し減らすので、方法のいずれかは、コンストラクタ以外のメソッドから呼び出されるため、その回答Cが正解ではないことに注意してください。可視性修飾子が含ま
A.のパブリック、プライベート
プライベートB.公開し、保護された
C.のパブリック、プライベート、保護され、最終
D.公開、保護され、最終的に、静的
E.のパブリック、プライベート、保護、静的
パブリック、プライベート、保護されたコントロールを:解析変数やメソッドの可視性。変数、メソッド、またはクラスがさらに視認性がない変更または上書きすることができるかどうかを最終的なコントロール。変数またはメソッドは、クラスまたはクラス自体のインスタンスに関連付けられているかどうかを静的制御します。あなたがvoid戻り値の型を持っているクラスのコンストラクタを宣言した場合はどうなりますか?
A.あなたは構文エラーの可能性が届き
プログラムが警告してコンパイルしますB.をしていますが、ランタイムエラー取得します
無効とするコンストラクタ宣言には何もありませんC.を
D.クラスのデフォルトコンストラクタが使用されますが、代わりに、あなたが宣言していないしているものの
上記のE.なしに
それも、ボイドあらゆるタイプのコンストラクタを宣言するための構文違反であるので、あなたは構文エラーを受け取ります:解析。
ペアピアレビューと
コメント:
- 学習課題やブログワース:
- イラスト、参照があります
- より多くの熟練使用してマークダウンフォーマット
- コードは、学習や問題価値があります:
- 読みやすいコードフォーマット仕様、空白の使用の合理化、
- 14ポイント:スコアに基づいて、私はこのブログの得点を与えます。次のようにスコアは以下のとおりです。
- 図1に示すように、適切な使用の値引きの構文(1点)
- 図2に示すように、テンプレートの要素が完了した(1点)
- 3、教科書の学習と問題解決プロセス(2点)
- 図4に示すように、コードのデバッグ及び工程(1点)での問題を解決
- 5、有効なコード週間にわたり300支店(プラス2ポイント)
- 6.その他のポイント:
- 感情、経験は大きな空の1ポイントを残しません
- プログレスバーは、学習時間を記録し、1ポイントの状況を改善します
- ハンズオン新しいコードを書くことがありますが、1ポイントを追加
- コードはメッセージ仕様1ポイントをコミット
- 深さの間違った質問を学ぶ、1ポイントを追加
- コメントは真剣に、私は、問題やブログのコードに加えて1ポイントを指摘することができます
- ペアは本物のプラス1ポイントを学びます
- 参考例
コメントは、学生のブログやコードを持っていました
- ペア今週の学習
- ペア学習コンテンツ
- ユニットテストコードをテスト
- TDDコードのテスト
- 書き込みなど、公共のボイドと書き込みクラスを使用するために学ぶことは、クラスメソッドを計算を呼び出します
- クラスとクラスの継承関係、重合、協会
- 学習メソッド呼び出しとパッケージングの方法を使用して
その他(知覚、思考、など、別売)
異なるがあるが、徐々に理解するために、より詳細な研究が必要である本質その類似点が存在するものの、研究と実践の2週間後、私は徐々に、実際には、C言語とJava言語を学期を築くために基礎となるC言語のことに気づきました。
学習の進捗バー
コードの行の数(/蓄積を追加) | ブログ量(/蓄積を追加) | 学習時間(/蓄積を追加) | 重要な成長 | |
---|---|---|---|---|
目標 | 10,000行 | 30 | 400時間 | |
最初の週 | 109分の109 | 2/2 | 28/28 | Linuxのbashのコマンドに精通したJavaの基本的な構文を学びます |
第二週 | 659分の550 | 1/3 | 51分の23 | JDBデバッガコマンドを習得するために学びます |
第3週 | 1028/1687 | 2/5 | 81分の30 | コンパイルと学習クラス |
4週 | 542/2229 | 2/7 | 103分の22 | オーバーロード、クラスの継承、重合を学びます |
参考:なぜそんなにハード、ソフトウェアエンジニアリングソフトウェアを推定され、ソフトウェアエンジニアリングの推定法
プランの学習時間:20時間
実際の学習時間:22時間
改善点:
(利用可能なより多くの参照現代のソフトウェア工学コースウェアソフトウェアエンジニア自己評価フォームへの能力を)