Java实习面试基础题-Final理解总结

积土成山,风雨兴焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以至千里,不积小流无以成江海。齐骥一跃,不能十步,驽马十驾,功不在舍。面对悬崖峭壁,一百年也看不出一条裂缝来,但用斧凿,能进一寸进一寸,能进一尺进一尺,不断积累,飞跃必来,突破随之。

目录

作用

final关键字可以用来修饰变量、方法和类。

修饰变量

基本类型

在定义变量时,系统不会为局部变量进行初始化,局部变量必须由程序员显示初始化。或者在静态代码块中进行赋值(但都必须是在使用之前进行赋值)。如图:

但使用 final 修饰局部变量时,只要在使用局部变量前赋值就可以。(如果定义时就初始化了,后面就不能再次赋值;如果定义时未初始化,则只需要在使用之前初始化即可。)如图:

引用类型

指的是不能改变引用的指向,即只能指向同一处地址,但是能够修改指向对象的内容。如图:

  • 修改地址

  • 修改内容

修饰方法

当修饰方法时,该方法无法被子类重写。但子类依然可以继承、重载和调用父类方法。如下:

package com.tothefor;

/**
 * @Author DragonOne
 * @Date 2022/3/30 18:58
 * @墨水记忆 www.tothefor.com
 */
public class Main {
    static class Man{
        String name;
        int age;
        final public void show(){
            System.out.println("我是父类中的展示");
        }
    }
    static class Son extends Man{
    }

    public static void main(String[] args) {

        Son s = new Son();
        s.show(); //我是父类中的展示

    }
}

  • 实现重载
package com.tothefor;

/**
 * @Author DragonOne
 * @Date 2022/3/30 18:58
 * @墨水记忆 www.tothefor.com
 */
public class Main {
    static class Man{
        String name;
        int age;
        final public void show(){
            System.out.println("我是父类中的展示");
        }
    }
    static class Son extends Man{
        public void show(String name){
            System.out.println("我是儿子中的,展示"+name);
        }
    }

    public static void main(String[] args) {

        Son s = new Son();
        s.show(); //我是父类中的展示
        s.show("我的钱"); //我是儿子中的,展示我的钱

    }
}

修饰类

当修饰类时,则该类无法被继承(“断子绝孙类”)。如图。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值