java
java
半张紙
这个作者很懒,什么都没留下…
展开
-
OO_SOLID原则
SPR-Single Responsibility Principle OCP-Open Close Principle LSP-Liskvo Substitution Principle Note : 因为对子类调用方法时可能调用的是父类的方法,对父类调用方法时调用的是子类的方法。 Class BaseClass() { int cnt = 0; Queue q = new Queue&l...原创 2020-04-17 11:56:59 · 1389 阅读 · 0 评论 -
生产者消费者模式,观察者模式,工作者模式小结
1.生产者消费者模式 设计要点是 tray 生产者,消费者都要将对应的托盘对应为实例域 托盘的核心是一个DataQueue,但是tray并不直接将DataQueue的add和remove方法暴露给生产者消费者,而是 通过get()和put()方法。 get()和put()方法内部通过synchronized保护;内部通过while- wait - notify机制实现高效的轮流占有tr...原创 2020-04-08 18:59:36 · 1668 阅读 · 0 评论 -
OO多线程debug第二篇---如何定位bug
1. 输入条件的bug 这周OO第二次多线程电梯作业,我这次吸取了上周的教训,周三开始动工,周四就搞定,并顺利通过本地和网站的自动测评机的正确性测评。 在周四的自动化测评中找出如下bug: 电梯进程的结束条件错误: 我原先定的结束条件是input进程结束并且当前电梯进程的pin和pout队列为空。但是这用做可能会漏掉最后的输入,因为当最后的输入p被添加到全局pout队列,然后input进程结束。...原创 2020-04-04 20:56:02 · 1333 阅读 · 0 评论 -
OO多线程debug第一篇---多线程出现bug的原因
昨天oo第五次作业,在ddl前半小时发现了一个bug,我猜到可能与sunchronized同步互斥的范围没有调整好有关系,但是通过IDEA的debug模式和JProfile的视图都没有很快找出bug。最后不出所料的话,这次的作业又将是一片红。以后OO作业一定要周二晚或者周三早上就开始,在周五中午前要完成代码。剩余的一天半用来构建测评机和debug。 再说一说,我最后是用print大法找出了bug。...原创 2020-03-29 13:13:25 · 1441 阅读 · 0 评论 -
代码点与代码单元详解;ASCII, unicode, utf-8等编码详解
https://github.com/acmerfight/insight_python/blob/master/Unicode_and_Character_Sets.md 总结 1. 简单字符集 ascii是简单字符集,7bit表示;简单字符集的特点是定义了这个字符集包含什么字符,**同时把每个字符如何对应成计算机里的比特也进行了定义。**例如 ASCII,在 ASCII 里直接定义了 A -&...原创 2020-02-24 12:17:35 · 1555 阅读 · 0 评论 -
Java ==,和equals的区别,以及hashCode方法的本质和注意事项
文章目录1. java中的数据类型1.1 基本类型1.2 类2. Object.equals && Object.hahscode3.一般的equals方法和hashCode方法3.1两者的关系3.2方法的重写3.3Integer.hashCode和Double.hashCode4. Objects.hashCode与Objects.hash 1. java中的数据类型 java...原创 2020-02-24 20:48:11 · 1273 阅读 · 0 评论