• java基础知识--final关键字


    final关键字

      概述:用于修饰不可改变的内容。可以修饰类、方法、变量。

    •  类:被修饰的类,不能被继承。(所以final和abstract关键字不能一起使用)

         final class 类名 { }

    •  方法:被修饰的方法,不能被重写。

         修饰符 final 返回值类型 方法名(参数列表) {
            //方法体
         }

    •  变量:被修饰的变量,不能被重新赋值。

        1. 局部变量--基本类型:被final修饰,只能赋值一次,不能再更改,格式有如下两种

          ① final int a = 10;

          ② final int b;

           b = 20;

        2. 局部变量--引用类型:被final修饰,只能指向一个对象,地址不能再更改。但是不影响对象内部成员变量值的修改。 

    public class FinalDemo {
      public static void main(String[]args) {
        //创建user对象
        final user u = new User();
        //创建另一个User对象
        u = new User();  //报错,指向了新的对象,地址值改变。
        //调用setName方法     u.setName("张三"); //可以修改   }
    }

        3. 成员变量:成员变量涉及到初始化的问题,初始化方式有两种,只能二选—。

        // final修饰的成员变量,需要在创建对象前赋值,否则报错。

         ① 显示初始化

    public class User {
      final String USERNAME = "张三";
      private int age;
    }
    

          ② 构造方法初始化

    public class User {
      final String USERNAME;
      private int age;
      public User(String username,int age) {
        this.USERNAME = username;
        this.age = age;
      }
    }

        

  • 相关阅读:
    #Leetcode# 541. Reverse String II
    PAT 甲级 1030 Travel Plan
    PAT 甲级 1029 Median
    bzoj 2002 [Hnoi2010]Bounce 弹飞绵羊
    jzoj 4243. 【五校联考6day1】c
    2019.02.23【NOIP提高组】模拟 A 组 总结
    【GDOI2013模拟1】病毒传播
    【GDOI2013模拟1】最短路
    【GDOI2013模拟1】删数字
    数列分块入门 6 总结
  • 原文地址:https://www.cnblogs.com/sun9/p/13443799.html
Copyright © 2020-2023  润新知