JAVA部分基础笔记

发布于 2022-11-10  26 次阅读


强引用、软引用、弱引用和虚引用的区别?

  • 强引用是最常见的基本引用,只要这个强引用还指向一个对象,那么久证明这个对象还活着那么它就不会被回收,
  • 软引用是强引用的弱化版,它可以让对象避免一些垃圾回收,之后如果当jvm内存不够的话,它尝试去手机软引用和引用的对象,软引用通常可以实线内存中的缓存
  • 弱引用不能避免对象垃圾回收,可以构建一种没有特定的约束关系
  • 虚引用只是一种java中的定义,不能被访问,果一个对象仅持有虚引用,那么它就和没有任何引用一样,在任何时候都可能被垃圾回收器回收。

Java4种引用的级别由高到低依次为: 强引用 > 软引用 > 弱引用 > 虚引用

ArrayList 和LinkedList 都是list下的集合

ArrayList的底层是用数组实线的,所以它增删改比较慢,但是查询功能块 LinkedList 底层是链表实线,所以查询慢,增删改比较快

final 在 Java 中有什么作用?

final 修饰的类叫最终类,该类不能被继承。

final 修饰的方法不能被重写。

final 修饰的变量叫常量,常量必须初始化,初始化之后值就不能被修改

Java 中操作字符串都有哪些类?它们之间有什么区别?

indexOf():返回指定字符的索引。 charAt():返回指定索引处的字符。 replace():字符串替换。 trim():去除字符串两端空白。 split():分割字符串,返回一个分割后的字符串数组。 getBytes():返回字符串的 byte 类型数组。 length():返回字符串长度。 toLowerCase():将字符串转成小写字母。 toUpperCase():将字符串转成大写字符。 substring():截取字符串。 equals():字符串比较。

容器

Java 容器都有哪些?

Java 容器分为 Collection 和 Map 两大类,其下又有很多子类,如下所示:

Collection类:

List

  • ArrayList
  • LinkedList
  • Vector
  • Stac

Set

  • HashSet
  • LinkedHashSet
  • TreeSet

map类:

HashMap

  • LinkedHashMap

TreeMap

ConcurrentHashMap

Hashtable