ビデオ: 【Javaプログラミング講座/オブジェクト指向 #5】継承②(継承とコンストラクタ/オーバーライド/protected/toStringメソッド) ※1.5倍速での再生を推奨 2024
Androidアプリケーションのコードの大部分は、
public
という単語で始まる可能性が高いです。 。クラスがパブリックの場合、パッケージ内のプログラムはそのクラス内のコード(またはコードの少なくとも一部)を使用できます。クラスがパブリックでない場合、そのクラス内のコードを使用するプログラムでは、クラスと同じパッケージ内にプログラムが存在する必要があります。
段落とは
package com。 allyourcode。ワードプロセッサ;
クラス段落{
int alignment;
int border;
double leftIndent;
double lineSpacing;
intスタイル。
}
同じパッケージ内のコードで段落を作る
package com。 allyourcode。ワードプロセッサ;
クラスMakeAParagraph {
段落段落=新しい段落();
{
段落。 leftIndent = 1. 5;
}
}
別のパッケージにコードを含む段落を作る
//これは悪いコードです:
package com。 allyourcode。編集者;
import com。 allyourcode。ワードプロセッサ。段落;
パブリッククラスMakeAnotherParagraph {
段落段落=新しい段落();
{
段落。 leftIndent = 1. 5;
}
}
最初のコードセットの
段落
クラスは デフォルトアクセス - 公然。 2番目のコードセットのコードは、
段落
クラス(
allyourcode。ワードプロセッサ
パッケージ)と同じパッケージに含まれています。したがって、
Paragraph
型のオブジェクトを宣言することができ、そのオブジェクトの
leftIndent
フィールドを参照することができます。
最後のセットのコードが同じ
comにありません。 allyourcode。ワードプロセッサ
パッケージ。そのため、
Paragraph
や
leftIndent
などの名前は、同じAndroid Studioプロジェクトに属していても使用できません。上記のすべてのセットのコードをAndroidスタジオエディタに入力すると、最後のセットの赤い汚れた混乱が見えます。
コード内のエラー。
メソッドの中にない代入ステートメントを見たことがありますか?メソッドの外では、イニシャライザブロックを作成しない限り、値を物に割り当てることはできません。他の種類のブロックと同様に、イニシャライザブロックには中カッコが閉じています。中カッコの間には、イニシャライザブロックに値を代入するステートメントがあります。第2のコードセットでは、イニシャライザブロックは、段落の
フィールドに値1.5を割り当てる。最後のコードセットでは、イニシャライザブロックは値の割り当てを試みますが、
Paragraph
クラスは公開されていないため、割り当てが機能しません。
。パブリッククラスを含むjava
ファイルはパブリッククラスと同じ名前でなければなりません。ファイル名の大文字でさえ、パブリッククラスの名前と同じでなければなりません。
ファイルネーミング規則のために、
に複数のパブリッククラスを宣言することはできません。 java
ファイル。