1. 程式人生 > >final關鍵字修飾類,方法以及變量的特點 學習

final關鍵字修飾類,方法以及變量的特點 學習

double 最終 改變 on() 變量 final 底層 return 類型

A:final概述

  • B:final修飾特點
    • 修飾類,類不能被繼承
    • 修飾變量,變量就變成了常量,只能被賦值一次
    • 修飾方法,方法不能被重寫
  • C:案例演示
    • final修飾特點
class Demo1_Final {
    public static void main(String[] args) {
        Son s = new Son();
        s.print();
    }
}
/*
* A:final概述
    final是最終的
* B:final修飾特點
    * 修飾類,類不能被繼承
    * 修飾變量,變量就變成了常量,只能被賦值一次
    * 修飾方法,方法不能被重寫
* C:案例演示
    * final修飾特點
*/

/*final class Father {
    public void print() {
        System.out.println("訪問底層數據資源");
    }
}*/

class Son /*extends Father*/ {
    final int NUM = 10;                     //常量命名規範,如果是一個單詞,所有字母大寫,如果是多個單詞,每個單詞都大寫,中間用下劃線隔開
    public static final double PI = 3.14;   //final修飾變量叫做常量,一般會與public static共用
    public void print() {
        //NUM = 20;
        System.out.println(NUM);
    }
}
class Demo2_Final {
    public static void main(String[] args) {
        final int num = 10;
        //num = 20;
        System.out.println(num);

        final Person p = new Person("張三",23);
        //p = new Person("李四",24);
        p.setName("李四");
        p.setAge(24);

        System.out.println(p.getName() + "..." + p.getAge());

        method(10);
        method(20);
    }

    public static void method(final int x) {
        System.out.println(x);
    }
}
/*
* A:案例演示
    * 方法內部或者方法聲明上都演示一下(了解)

    * 基本類型,是值不能被改變
    * 引用類型,是地址值不能被改變,對象中的屬性可以改變
*/

class Person {
    private String name;            //姓名
    private int age;                //年齡

    public Person(){}               //空參構造

    public Person(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;
    }
}

class Demo3_Final {
public static void main(String[] args) {
Demo d = new Demo();
d.print();
}
}
/*

  • A:final修飾變量的初始化時機
    • 顯示初始化
    • 在對象構造完畢前即可
      */

class Demo {
final int num; //成員變量的默認初始化值是無效值

public Demo() {
    num = 10;
}
public void print() {
    System.out.println(num);
}

}

final關鍵字修飾類,方法以及變量的特點 學習