ローカル変数とメンバ変数
- 別の位置を定義
内部の方法:ローカル変数
メンバー変数:外部プロセス、直接クラスで記述されています - 別のスコープ
のローカル変数の:のみ使用することができる唯一の方法は、この方法は、再利用することはできません
メンバ変数を:全体のクラスはすべての一般的なことができます - 異なるのデフォルト値は
、使用したい場合は既定値はありません、あなたは手動で割り当てる必要があります:ローカル変数
のメンバ変数:何の割り当てが存在しない場合、デフォルト、ルール、および同じ配列が存在します - 別のメモリ位置
のローカル変数:スタックメモリに位置
メンバ変数:位置ヒープメモリ - ライフサイクルは同じではありません
pushメソッドや出産では、スタック方式と一緒に消える:ローカル変数は
メンバ変数を:オブジェクトの作成と誕生して、オブジェクトがガベージが消えているよう
privateキーワード
あなただけの、このクラスの重要な変数を変更してアクセスすることができます
ときにクラスのメンバ変数やメソッドの同じ名前のローカル変数
変数のうち、本クラスのメンバへのアクセスは、フォーマットを必要に応じて近接の原理によると、優先、ローカル変数を使用this.成员变量名
public class test2 {
String name;
public void sayhello(String name){
System.out.println(name+"你好"+this.name);
}
}
コンストラクタ
メソッドは、オブジェクトコンストラクタを初期化するために使用されたときにオブジェクトが作成されると、オブジェクトのメンバ変数は初期値、書き込みの構成方法、方法に譲渡され、それは名前、クラス名と同じです。それはノーリターンタイプので、でも無効にする必要がない、値を返しません。
注意事項
- あなたはコンストラクタを提供しない場合は、システムには、コンストラクタのパラメータを与えないだろう。
- あなたはコンストラクタを提供する場合、システムはもはや引数なしのコンストラクタを提供しないでしょう。
- コンストラクタは、パラメータが定義されない場合があり、いずれかの定義されたパラメータをオーバーロードされています。
標準コード--JavaBean
JavaBeanは、言語のクラスで書かれたJavaの標準仕様です。JavaBeanの出会いクラス要件および特定のクラスには、セットを動作させるための方法を提供し、メンバ変数を取得するには、パブリック、および引数のないコンストラクタでなければなりません。
public class ClassName{
//成员变量
//构造方法
//无参构造方法【必须】
//有参构造方法【建议】
//成员方法
//getXxx()
//setXxx()
}
//示例代码
public class Student {
//成员变量
private String name;
private int age;
//构造方法
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
//成员方法
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
}
匿名オブジェクト
/*
创建对象的标准格式:
类名称 对象名 = new 类名称();
匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。
new 类名称();
注意事项:匿名对象只能使用唯一的一次,下次再用不得不再创建一个新对象。
使用建议:如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。
*/
public class Demo01Anonymous {
public static void main(String[] args) {
// 左边的one就是对象的名字
Person one = new Person();
one.name = "高圆圆";
one.showName(); // 我叫高圆圆
System.out.println("===============");
// 匿名对象
new Person().name = "赵又廷";
new Person().showName(); // 我叫:null
}
}