2020-08-08

2020-08-08

问题:
1、hashmap实现原理与hashtable

2、重写hashcode和equals方法
添加链接描述
3、内部类的使用范围及匿名内部类的实现要求
添加链接描述
4、http和https的对称加密和非对称加密
添加链接描述
5、路由
6、子网划分
7、linux中文件处理awk、find、grep
8、三次握手四次挥手及对应状态
9、拥塞控制和流量控制

2020-08-09

1、方法区
即时编译器编译的代码是什么
常量指的是什么
2、垃圾回收器及其介绍
3、sql外连接内连接
4、优化重点
尽量使用连接,不使用子查询
连续值可以使用between代替in
能使用exists就不要使用in
5、计算机网络知识
路由器工作原理
路由器工作原理
网络层工作原理
IP协议及ip数据报
tcp/ip协议组
tcp报文段
tcp报文详解
计算机网络面试题

2020-08-26


等待阻塞/同步阻塞/其他阻塞

等待阻塞wait() 对象执行wait()方法被放入等待队列
同步阻塞:线程在获取 synchronized 同步锁失败,放入锁池
其他阻塞:通过调用线程的 sleep()或 join()或发出了 I/O 请求时
锁池和等待池
锁池:存放所有等待该对象锁的线程,当持有锁的线程释放的时候,在锁池中的线程都会争夺锁,成功抢到锁的线程进入就绪状态
等待队列:当该对象执行了wait()后会被放入等待队列,当正在执行的线程执行notify()/notifyAll()方法的时候,则该队列中的线程会和锁池中的线程一起抢夺锁,抢夺成功则进入就绪状态,否则仍在等待队列中
关于锁池和等待队列


sleep和wait的区别

sleep()只是让出了cpu的时间片,但是不释放锁,当sleep的时候可以被interrupt打断,因此需要捕获interruptexception异常,同时sleep是Thread的静态方法,可以直接通过类名。方法名直接调用。时间到了会自动苏醒
wait() object方法,需要notify/notifyAll才能被唤醒。当执行wait方法的时候需要在同步代码块里面才可以。


object方法有哪些

equals(); 默认为==,String重写为对内容的比较
hashcode():把对象的内存地址通过计算得到一个int值
因为两个对象相等,则hashcode一定相等。但是如果重写了equals方法使得两个对象相等,但是计算出来的hashcode不等,违反了原则会在某种情况下导致内存泄漏

两个对象相等,hashcode一定相等
两个对象不等,hashcode不一定不等
hashcode相等,两个对象不一定相等
hashcode不等,两个对象一定不等

toString();不重写返回类名@hashcode值,String重写的话返回的是内容
clone()克隆,默认浅拷贝
wait();
notify()
notifyAll();
finalize();垃圾回收时执行


©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页