晓冬_1210 2019-08-15 22:19 采纳率: 100%
浏览 782
已采纳

String a = "hello2"; final String b = "hello"; 两者有什么区别呢?

String a = "hello2"; final String b = "hello"; 两者有什么区别呢?
代码1
```String a = "hello2";
final String b = "hello";

String c = b + 2;

System.out.println((a == c));

代码2
`public class Main {

public static void main(String[] args) {

String a = "hello2";

final String b = getHello();

String c = b + 2;

System.out.println((a == c));

}

public static String getHello() {

return "hello";

}
}

  • 写回答

2条回答 默认 最新

  • 香飘十里○ 2019-08-16 14:26
    关注

    老铁,你先要搞清楚final修饰词的具体含义及用途
    1.修饰的变量为常量不能被修改,需在定义时就赋值,不赋值的话,就需要在构造方法中赋值(在方法里可以暂时不赋值)
    2.修饰变量时经常配合static一起使用
    3.如果修饰的是一个new出来的对象的话,那么是这个对象的引用不可变,而不是这个对象的内容不可变
    4.修饰的类不能被继承
    5.修饰的方法不能被重写

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器