【javaベース】キーワード
3435 ワード
キーワードデフォルト public private protected 呼び出し権限 同じpackageで 異なるpackageにおける static final superとthis デフォルト
デフォルトは何も書かず、クラス、インタフェース、メソッド、プロパティ
public
クラス、インタフェース、メソッド、プロパティを修飾できます
private
メソッド、プロパティを修飾できます
protected
メソッド、プロパティを修飾できます
アクセス権の呼び出し
同じパッケージで
デフォルトのキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます.
publicキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます
privateキーワードのプロパティ、メソッドは使用できません
protectedキーワードのプロパティ、メソッドを呼び出すことができます
違うパッケージで
publicのプロパティ、インタフェース、メソッドのみがデフォルトのキーワードを呼び出すことができるプロパティ、メソッド、インタフェースを呼び出すことができます
publicキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます
privateキーワードのプロパティ、メソッドは使用できません
protectedキーワードのプロパティ、メソッドを呼び出すことができます
static
static付きメソッドまたはプロパティは、クラスのメソッドとプロパティを表し、グローバル変数またはグローバルメソッドです.
staticのメソッドやプロパティを呼び出す場合は、newをインスタンス化する必要がなく、クラス名で直接呼び出すことができます.
final
finalで修飾された変数やメソッドは、修正されず、継承されず、書き換えられず、使用可能
superとthis
デフォルトは何も書かず、クラス、インタフェース、メソッド、プロパティ
class Demo1 {
String a;
void func1(){ };
}
interface Interface1 {
}
public
クラス、インタフェース、メソッド、プロパティを修飾できます
public class Demo2 {
public String b;
public void func2(){ };
}
public interface Interface2 {
}
private
メソッド、プロパティを修飾できます
public class Demo3 {
private String c;
private void func3(){ };
}
protected
メソッド、プロパティを修飾できます
public class Demo4 {
protected String d;
protected void func4(){};
}
アクセス権の呼び出し
同じパッケージで
デフォルトのキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます.
Demo1 d1=new Demo1();
System.out.println(d1.a);//
d.func1();//
public class Demo implements Interface1{}//
publicキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます
Demo2 d2=new Demo2();
System.out.println(d2.b);// public
d.func2();// public
public class Demo implements Interface2 {}// public
privateキーワードのプロパティ、メソッドは使用できません
Demo3 d3=new Demo3();
System.out.println(d3.c);//
d.func3();//
protectedキーワードのプロパティ、メソッドを呼び出すことができます
Demo4 d4=new Demo4();
System.out.println(d4.c);// protected
d.func4();// protected
違うパッケージで
publicのプロパティ、インタフェース、メソッドのみがデフォルトのキーワードを呼び出すことができるプロパティ、メソッド、インタフェースを呼び出すことができます
Demo1 d1=new Demo1();
System.out.println(d1.a);//
d.func1();//
public class Demo implements Interface1{}//
publicキーワードのプロパティ、メソッド、インタフェースを呼び出すことができます
Demo2 d2=new Demo2();
System.out.println(d2.b);// public
d.func2();// public
public class Demo implements Interface2 {}// public
privateキーワードのプロパティ、メソッドは使用できません
Demo3 d3=new Demo3();
System.out.println(d3.c);//
d.func3();//
protectedキーワードのプロパティ、メソッドを呼び出すことができます
Demo4 d4=new Demo4();
System.out.println(d4.c);//
d.func4();//
static
static付きメソッドまたはプロパティは、クラスのメソッドとプロパティを表し、グローバル変数またはグローバルメソッドです.
public class Demo {
public static String a;
public static void func(){ };
}
staticのメソッドやプロパティを呼び出す場合は、newをインスタンス化する必要がなく、クラス名で直接呼び出すことができます.
System.out.println(Demo.a);
Demo.func();
final
finalで修飾された変数やメソッドは、修正されず、継承されず、書き換えられず、使用可能
public final class Demo {
public final String a="finalDemo";
public final void func(){ };
}
Demo d= new Demo();
d.a=" ";//
System.out.println(d.a);//
d.func();//
public class SonFinalDemo extends Demo{}//
superとthis
public class Parent{
public void func(){
System.out.println("parent func");
}
}
public class Son extends Parent{
int a=123;
public void func1(){
super.func();// , super
}
}
public void func2(int a){
int a=123;
System.out.println(a);// a , a, a
System.out.println(this.a);// a a, 123;
}
func2(111);// :
111
123