大数据必学Java基础(四十二):Final关键词讲解

Posted Lansonli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据必学Java基础(四十二):Final关键词讲解相关的知识,希望对你有一定的参考价值。

文章目录

Final关键词讲解

一、修饰变量

二、修饰方法

三、修饰类

四、案例:JDK提供的Math类


Final关键词讲解

一、修饰变量

public class Test 
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) 
        //第1种情况:
        //final修饰一个变量,变量的值不可以改变,这个变量也变成了一个字符常量,约定俗称的规定:名字大写
        final int A = 10;//final修饰基本数据类型
        //A = 20; 报错:不可以修改值
        //第2种情况:
        final Dog d = new Dog();//final修饰引用数据类型,那么地址值就不可以改变
        //d = new Dog(); -->地址值不可以更改
        //d对象的属性依然可以改变:
        d.age = 10;
        d.weight = 13.7;

        //第3种情况:
        final Dog d2 = new Dog();
        a(d2);
        //第4种情况:
        b(d2);

    
    public static void a(Dog d)
        d = new Dog();
    
    public static void b(final Dog d)//d被final修饰 ,指向不可以改变
        //d = new Dog();
    

二、修饰方法

final修饰方法,那么这个方法不可以被该类的子类重写

三、修饰类

final修饰类,代表没有子类,该类不可以被继承:

一旦一个类被final修饰,那么里面的方法也没有必要用final修饰了(final可以省略不写)

四、案例:JDK提供的Math类

看源码发现:

1、使用Math类的时候无需导包,直接使用即可

2、Math类没有子类,不能被其他类继承了

3、里面的属性全部被final修饰,方法也是被final修饰的,只是省略不写了

原因:子类没有必要进行重写。

4、外界不可以创建对象

Math m = new Math();

5、发现Math类中的所有的属性,方法都被static修饰

那么不用创建对象去调用,只能通过类名.属性名  类名.方法名 去调用


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

以上是关于大数据必学Java基础(四十二):Final关键词讲解的主要内容,如果未能解决你的问题,请参考以下文章

大数据必学Java基础(四十四):接口讲解

大数据必学Java基础(四十九):Math类和Random类的讲解

大数据必学Java基础(四十):面向对象三大特性之一继承(Inheritance)

大数据必学Java基础(四十一):面向对象三大特性之一多态(Polymorphism)

大数据必学Java基础(四十七):异常的讲解

大数据必学Java基础(五十二):集合的深入了解