java:final关键字

fianl:最终的意思。它可以修饰类、成员变量、成员方法。

特点:

1、修饰类,类不能被继承

2、修饰成员变量,变量变常量,并且只能赋值一次,在构造方法完毕之前赋值即可

常量

字面值常量;

被final修饰的变量变成自定义常量;

3、final修饰成员方法,成员方法不能被重写;

class Fu4{
    int num1 = 10;

    //    final int num2 = 200;
    final int num2;
//    {
//        num2 = 400;
//    }

    Fu4(){
        num2 = 400;
    }
}
class Zi4 extends Fu4{
    public void show(){
        int num1=100;
        System.out.println(num1);
        System.out.println(num2);
    }
}
public class Final1 {
    public static void main(String[] args) {
        Zi4 zi4=new Zi4();
        zi4.show();
//        100
//        400
    }
}

面试题:

final修饰局部变量

1、在方法内部,修饰基本类型的数据变量,变量值只能赋值一次,不能发生改变。

2、当final修饰的是引用数据类型的值时,引用的地址不可发生改变,但是该对象堆内存的值可以改变

class Pig{
    int age=10;
}
public class Final2 {
    public static void main(String[] args) {
        int x=20;
        x=30;
        System.out.println(x);
//        30

        final int y=200;
        System.out.println(y);
//         200
        Pig pig=new Pig();
        System.out.println(pig.age);
//         10
        final Pig pig1=new Pig();
        System.out.println(pig1.age);
//        10
         pig1.age=1000;
        System.out.println(pig1.age);
//         1000
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值