JAVA学习笔记----继承

本文深入探讨了Java中的关键概念,包括反射、子类与超类的关系、final关键字的使用、类型转换、抽象类的特点以及equals方法的要求等。此外,还介绍了ArrayList的操作方法和枚举类型的比较方式。
摘要由CSDN通过智能技术生成

1.反射:是指在程序运行期间发现更多的类及其属性的能力。

2.子类的方法不能直接访问超类的私有域。。

3.super不是一个对象引用,不能将super赋值给以个对象变量,它只是一个指示编译器调用超类方法的关键字。

4.不能将超类的对象赋值给子类变量。

5.现在允许子类将覆盖方法的返回类型定义为原返回类型的子类型。

6.final类:阻止继承、不允许扩展。

7.final方法:子类不能覆盖。

8.如果将一个类声明为final,只有其中的方法自动成为final,而不包括域。

9.只能在继承层次内进行类型转换。

10.在将超类转换成子类前,应该使用instanceof进行检查。
11.抽象类不能被实例化。

12.可以定义一个抽象类的对象变量,但是它只能引用非抽象子类的对象。

13.JAVA要求equal方法具有下面的特性:

      1)自反性:对于任何非空引用x,x.equals(x)应该返回true.

      2)对称性:对于任何引用x和y,当且仅当y.equals(x)返回true,x.equals(y)也应当返回true.

      3)传递性:对于任何引用x、y、z,如果x.equal(y),y.equals(z),返回true,那么x.equal(z),也应该返回true.

      4)一致性:如果x和y引用的对象没有发生变化,反复调用x.equal(y)应该发返回同样的结果。

     5)对于任意非空引用x,x.equal(null)应该返回false.

14.一旦能够确认数组列表大小不再发生变化,就可以调用trimToSize方法。这个方法将存储区域的大小调整为当前元素锁需要的存储空间数目。垃圾回收器将回收多余的存储空间。

15.使用toArray方法将数组元素拷贝到一个数组中。

16.在比较两个枚举类型的值时,永远不需要调用equals,而直接调用“==”就可以了。

17. 反射:利用get方法只能得到可访问的域的值,java的安全机制只允许查看任意对象有哪些域,而不允许读取他们的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值