Java final修饰符详解。

文章详细介绍了Java中的final修饰符的用法,包括final修饰的类不可被继承,final方法可以被继承但不能被重写,以及final修饰的属性必须在构造时初始化并不得改变。同时,给出了示例代码展示final在类和方法中的应用。
摘要由CSDN通过智能技术生成

fina修饰符的用途

一、修饰类

        final类不能被继承

二、修饰方法

          final方法可以被继承,但是不能被子类重写                

三、修饰类属性(int,double等)

        特别注意,类似于c++const,被final修饰的属性必须进行初始化,因为要构造后将不能再更改

      1、在定义的时候就初始化。

      2、在构造函数中初始化。

  

final class A{

}

class C{

      
 

    // final修饰的属性要么在定义的时候初始化,
   //要么在构造函数中初始化,否则会出错,因为在后续就无法赋值了

    // 1、构造函数初始化法
    final int j;

    C(int j){
        this.j=j;
    }

// 2、直接初始化法
    //  final int j=1;

    final void f(){
        System.out.println("ccc");
    }

}

// 抽象类不能被继承
/* 
class B extends A{

}
 */


class D extends C{

    D(int j){
        super(j);
    }


    // 错误,无法覆盖C中的final方法,final方法并不是不能被继承,而是被继承后无法被重写,
/*     
    void f(){
        System.out.println("DDD");
    } 
*/



}

public class final_Test{
    public static void main(String[] args) {
        D dd=new D(1);
        dd.f();
        
    }


}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值