java之final关键字浅析

final关键字理解:

       final英文意思为最终的,告诉编译器我修饰的这个地方是“不能变“, final可以理解为引用的锁定,包括基本类型,方法,对象的引用,用final进行修饰后就相当于锁定这个引用了。

final需求有时候我们我们写的变量,或者我们写的方法和类,不能被不能被改变;

只是给用户使用特定的方法,例如基本类型中的包装类Integer StringBooealn,好处显而易见,多线程数据共享时候不会变化,保证线程的安全,

final是java中的一个修饰关键字,它可以声明与变量,方法,类经常final与static一起用。

修饰变量

       首先修饰的变量有两类 1:成员变量 2本地变量(方法或者代码块中的变量)

final String a=”hello java”;//此时这个引用a不能指向别的对象,否则就会发生编译错误。

例如:s=new String(“java”);//

被final修饰的成员变量必须要进行初始化,

1:通过声明时候进行初始化,

      例如: final Strings=”hello java”;

2:通过构造器进行初始化

例如:

public class Animal{

final String a;

Animal(Stringa)//构造器进行初始化a,此时也就是空final

      this.a=a;

}

修饰方法:

 final方法不能被继承

例如某一个非final类中有一个被final修饰的方法,该类被继承时其子类不会继承父类的final方法

 

 public class cat extands Animal{

       sop(“hello world”);

}                          

 

修饰类:

被修饰的类不能被继承,这个类就是最终类,不可能还有孩子;

例如animal类

Publicclass Dog extands Animal{//编译直接出错,

 

}

注意:final 与引用,对象。 final 所修饰的引用不能指向别的对象,但是final原来指向的对象内容是可以变化的,比如setName(),getName()等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值