java怎么快速补缺_Java查漏补缺-小细节

1.类型转换问题

public static voidmain(String args[]) {int num = 2147483647;

num+= 1L;//根据num的类型,先将1L转为int,然后再相加,故结果为-2147483648//long b = num + 1L;//根据b类型,将num升级为long类型,然后相加//int b = Integer.MAX_VALUE; 2147483647//int b = Integer.MIN_VALUE; -2147483648

System.out.println(num) ;

}

输出:-2147483648

2.逻辑运算,与运算(前边失败的,后边不会执行),或运算(前边成功的,后边也不会执行)

public static voidmain(String args[]) {boolean flag = 10%2 == 1 && 10 / 3 == 0 && 1 / 0 == 0;

System.out.println(flag? "mldn" : "yootk") ;

}

输出:yootk(10%2==1 为false,后边不会执行)

public static voidmain(String args[]) {boolean flag = 10%2 == 1 || 10 / 3 == 0 || 1 / 0 == 0;

System.out.println(flag? "mldn" : "yootk") ;

}

输出:Exception in thread "main" java.lang.ArithmeticException: / by zero

3.注解

(1)@Override:结构注解,防止覆写父类方法出现错误,在编译期就能意识到;

4.向下转型,需要用instanceof 判断实例是否为对应类的实例,防止隐患。

5.自动装箱和拆箱,构造包装类时,不需要调构造方法,在1.9版本中构造方法置为已过期

6.接口加强

(1)接口主要包含静态变量和抽象方法

(2)通常定义接口与实现类时,都需要先实现抽象类,然偶再实现具体实现类。以后接口增加新的公共方法,可以在抽象类中添加,不用每个实现类添加;

(3)在1.8版本,对接口进行了加强,可以在接口中直接加普通方法,但需要用default修饰。该方法属于补救方法,最好使用(2)的设计

(4)在1.8版本,还可以在接口中定义static方法,通过接口直接访问。

(5)但注意,最好使用(2)中的方式定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值