1. ==与equals()方法之间有何区别?
==
主要用来比较值类型数据的值是否相等,通过==
也可以比较引用数据类型的堆内存地址是否相等,equals()方法用于比较引用数据类型的值。
2. 线程中的sleep()、join()、yield()方法之间有何区别?
sleep()方法可以使得一个线程休眠,调用了join()方法的线程会优先执行,其他线程会等待调用了join()方法的线程结束,然后再执行,yiele()方法用于线程之间让步,但是线程让步不一定会执行。
3. 前后端分离如何实现?它的优缺点有哪些?
前后端分离的实现,就是将前端与后端独立出来,后端只需要提供可供前端访问的接口即可,并且按照约定好的数据格式返回数据。前后端分离,可以便于开发中的分工,使得后端开发人员能够更专注于业务代码。缺点在于前端需要频繁的调用后端接口获取数据。
4. 线程中的run()方法与start()方法之间的区别是什么?
run()方法是一个普通的方法,它与其他方法的执行没有区别,而start()方法用于开启一个线程。
5. Java中有哪些锁?
乐观锁、悲观锁、读写锁、可重入锁等。