JAVA学习中的问题

这篇博客详细列举了JAVA学习中遇到的一些问题和概念,包括数值运算的精度问题、低级错误、接口与抽象类的区别、多态、this和super的使用、内部类以及对象的向下还原等。同时,讲解了final修饰符的作用、接口的静态方法调用规则以及对象的equals方法和Objects.equals方法的差异。
摘要由CSDN通过智能技术生成

1 . 精度小于int的数值运算的时候都回被自动转换为int后进行计算

比如:

short a=1;
short b=2;
short c=a+b;//这里会报错!

必须改成:

short a = 1;
short b= 2;
short c=short(a+b);
=========
short c= 1+3;//这样可以

2 . 低级错误

在定义时写了一个表达式:short a+=1;//这样写不对; 要这样:
short a=1;
a+=1;

4.

switch不写break,会往下穿透(继续执行),直到遇到break或者switch结束。

5.

for循环中定义的变量只能在for循环中使用;while和do-while中的while条件中不能定义变量。

6.

List<String> list = new ArrayList<String>();
// Java 7 及以后的版本中,构造方法中可以省略泛型类型:
List<String> list = new ArrayList<>();**

7.this(参数)

,调用本类构造函数,super(参数)调用父类构造函数,只能在构造函数中使用,且必须是第一个语句,也是唯一一个。
子类构造方法中,默认第一语句是super()(不用自己写,编译器会隐含的自动加上),即调用父类无参构造函数,如果父类中没有无参构造函数,会报错,需要自己加上super(参数)。

8.java的类与类之间是不能多继承的,只能单继承(因为如果两父类中有同名函数,super不知道选谁)。接口之间能多继承.

9.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值