游客2pvd6bl7edge4_个人页

个人头像照片 游客2pvd6bl7edge4
个人头像照片
0
5
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2021年10月

正在加载, 请稍后...
暂无更多信息
  • 回答了问题 2021-10-13

    Java的四种引用,强弱软虚,用到的场景?

     1.强引用  最常用的引用类型,如Object object = new Object(),只要强引用存在,GC必定不回收,即使当前内存空间不足,jAVA虚拟机宁愿抛出OutofMemoryError错误,也不会靠随意回收具有强引用的对象来解决内存不足的问题 2.弱引用(WeakReference)   如果一个对象只有弱引用,就类似一个可有可无的产品,弱引用与软引用的区别在于:只具有弱引用的对象拥有更短暂的生命周期,在垃圾回收线程扫描它所管辖的区域的过程中,一旦发现了弱引用的对象,不管当前内存空间足够与否,都会回收它的存在,不过垃圾回收器是一个优先级很低的线程,因此不一定会可很快发现那些具有若引用的对象 3.软引用(SoftReference) 如果一个对象只具有软引用,那就类似于可有可无的物品,如果内存空间足够,垃圾回收器就不会回收这些对象的内存,只要垃圾回收器没有回收它,该对象就可以被程序使用,软引用可用来实现内存敏感的高速缓存,软引用可以与引用队列(ReferenceQueue)联合使用,如果软引用的对象被垃圾回收,JAVA虚拟机就会把这个软引用加入到关联的引用队列中 4.虚引用(PhantomReference) "虚引用"顾名思义,就是形同虚设,和其他几种引用都不同,它不会决定一个对象的生命周期,如果一个对象只具有虚应用,那么他就和没有任何引用一样,任何时候都可能被垃圾回收,虚引用主要用来跟踪对象被垃圾回收的活动,虚引用和软引用和弱引用的一个区别在于:虚引用必须和引用队列联合使用,当垃圾回收器准备回收一个对象时,如果发现他还有虚引用,就会在回收对象的内存之前,把这个虚引用加入到与之关联的引用队列中,程序可以判断引用队列中是否加入了虚引用,来了解引用 的对象是否将要被垃圾回收,程序如果发现某个虚引用被加入到引用队列中,那么就可以在所引用的对象的内存被回收之前采取必要的

    踩0 评论0
  • 回答了问题 2021-10-13

    Object有哪些公用方法?

    protected Object clone() 创建并返回此对象的一个副本。 boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”。 protected void finalize() 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。 Class getClass() 返回此Object的运行时类。 int hashCode() 返回该对象的哈希码值。 void notify() 唤醒在此对象监视器上等待的单个线程。 void notifyAll() 唤醒在此对象监视器上等待的所有线程。 String toString() 返回该对象的字符串表示。 void wait() 在其他线程调用此对象的notify()方法或 notifyAll()方法前,导致当前线程等待。 void wait(long timeout) 在其他线程调用此对象的notify()方法或notifyAll()方法,或者超过指定的时间量前,导致当前线程等待。 void wait(long timeout, int nanos) 在其他线程调用此对象的notify()方法或notifyAll()方法,或者其他某个线程中断当前线程,或者已超过某个实际时间量前,导致当前线程等待。

    踩0 评论0
  • 回答了问题 2021-10-13

    equals与==的区别。

    值类型是存储在内存中的堆栈(以后简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。 ==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。 ==比较的是2个对象的地址,而equals比较的是2个对象的内容。显然,当equals为true时,==不一定为true。

    踩0 评论0
  • 提交了问题 2021-10-13

    Switch能否用string做参数?

  • 回答了问题 2021-10-13

    九种基本数据类型的大小,以及他们的封装类?

    java提供了一组基本数据类型,包括:boolean, byte, char, short, int, long, float, double, void. 同时,java也提供了这些类型的封装类,分别为:Boolean, Byte, Character, Short, Integer, Long, Float, Double, Void

    踩0 评论0
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息