static & final

static

被static修飾的方法,是類的方法,被static修飾的屬性,是類的屬性。

static若是放在屬性上,

public class Person1 {
    public static String aaa = "中國人";
    
    public String name;
    public int age;ui

此時aaa是能夠直接點出來的,而name,age是須要 Person p = new Person();this

p.name才能夠出來。 spa

static放在方法上,若是要直接使用別的方法,別的方法必須有static修飾

public class Digui {
    
    public static void main(String[] args) {
        int s = add(100);
        System.out.println(s);
    }
    public static int add(int i) {
        Digui.main(new String[0]);
        if(i==1) {
            return i;
        } else {
            return i+add(i-1);
        }
    }
}繼承

被static修飾後,直接使用類名就能夠點出來。

public class Person1 {
    public static String aaa = "中國人";
    
    public Person1(String name) {
        super();
        this.name = name;
   }
    public static void main(String[] args) {
        Person1 person = new Person1("Dreamlu");
        String xx = Person1.aaa;
    }
}class

Final

被final修飾的屬性,必須初始化。

初始化有兩種:gui

第一種:方法

public class Person1 {
    public static final String aaa = "中國人";
    
    public String name;
    public final int age;
    
    public Person1(String name) {
        super();
        this.name = name;
        this.age = 0;
    }static

第二種:new

public class Person1 {
    public static final String aaa = "中國人";
    
    public String name;
    public final int age=0;
    public Person1(String name) {
        super();
        this.name = name;
    }return

 

被final修飾的類,不能被繼承。

被final修飾的方法,不能被重寫。

相關文章
相關標籤/搜索