Java面试题(4)

static

静态变量、静态方法,静态资源可以被共享

静态代码块:初始化操作

静态内部类:修饰内部类

导入静态资源,无需使用类名,直接使用资源名,例:

import static java.lang.Math.max;
// System.out.println(Math.max(20, 10));
System.out.println(max(20, 10));

3*0.1==0.3返回值

false,因为浮点数精度问题,例:

double v = 3 * 0.1;
// v = 0.30000000000000004
System.out.println("v = " + v);
// false
System.out.println(3 * 0.1 == 0.3);

a=a+b和a+=b

a=a+b,不能进行类型转换

a+=b:会自动类型转换为左边a的数据类型

image-20221031192334663

try catch finally

问题:try里有returnfinally也有return,实际运行结果是finally返回值把try的覆盖

原因:try的返回值会暂时的存放到变量当中,如果finally也有返回值,那么就会覆盖,如果finally没有返回值,有输出语句,那么也会先执行输出语句,然后再执行tryreturn退出,保证finally一定执行

image-20221031192908827

Exception和Error

exception分为被检查异常(CheckedException)和运行时异常(RuntimeException

  1. 运行时异常:糟糕的编程习惯引起的,即使没有throws抛出、try-catch捕获,编译时也不会报错,只有运行时报错,例ArithmeticException算术异常、IndexOutOfBoundsException数组越界、ClassCastException类型转换异常、NullPointerException空指针异常

  2. 被检查异常:如果没有throws抛出、try-catch捕获,编译时会报错,例:读取文件不存在的FileNotFoundException

  3. 错误:例资源不足时,会发生OutOfMemoryError

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值