java基础
no_one码农
这个作者很懒,什么都没留下…
展开
-
多态以及原理
1.Java多态概述Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但可具有不同的参数列表、返回值类型。调用方法时通过传递的参数类型来决定具体使用哪个方法,这就是多态性。Java的方法重写,是父类与子类之间的多态性,子类可继承父类中的方法,但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。重写的参数列表和返回类型均不可修改。2...原创 2019-10-08 16:41:03 · 155 阅读 · 0 评论 -
linux一切都是文件???
对所有文件(目录、字符设备、块设备、 套接字、打印机等)操作,读写都可用fopen()/fclose()/fwrite()/fread()等函数进行处理。屏蔽了硬件的区别,所有设备都抽象成文件,提供统一的接口给用户。这就是“一切皆是文件”的思想。...原创 2019-10-08 13:58:27 · 288 阅读 · 0 评论 -
HashMap、ConcurrentHashMap1.7和1.8的区别
1.数据结构上:在JDK1.7版本中,ConcurrentHashMap的数据结构是由一个Segment数组和多个HashEntry组成 ;JDK1.8的实现已经摒弃了Segment的概念,而是直接用Node数组+链表+红黑树的数据结构来实现,并发控制使用Synchronized和CAS来操作,整个看起来就像是优化过且线程安全的HashMap.2.JDK1.7用的是头插法,而JDK1.8是尾插...原创 2019-10-08 13:52:01 · 280 阅读 · 0 评论 -
字符串常量池
Java中的字符串常量池Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new String("droid");,这两种方式我们在代码编写时都经常使用,尤其是字面量的方式。然而这两种实现其实存在着一些性能和内存占用的差别。这一切都是源于JVM为了减少字符串对象的重复创建...原创 2019-10-08 10:51:10 · 102 阅读 · 0 评论 -
异常体系
RuntimeException(运行时异常):不需要try...catch...或throws 机制去处理的异常。非RuntimeException:需要try...catch...或throws 机制去处理的异常。常见的RuntimeException:ClassCastExceptionNullPointerExceptionArrayIndexOutOfBound...原创 2019-09-23 21:42:24 · 161 阅读 · 1 评论 -
MVC架构模式
简介MVC模式就是架构模式的一种Model层(模型):包括存储数据的对象,比如javabeanView层(视图):提供给用户的操作的前端页面Controller层(控制):负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,产生最终结果。优点1.各施其职,互不干涉在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要...原创 2019-07-27 13:45:41 · 493 阅读 · 0 评论 -
什么时候应该建立索引&不应该使用索引
应该使用索引的情况1.较频繁地作为查询条件的字段2.经常用连接(join)的字段3.经常需要根据范围进行搜索的字段4.需要排序的字段不应该使用索引的情况唯一性很小的情况(select count(discount(column))/count(column) )表数据需要频繁修改字段不在where语句出现时不要添加索引数据量少的表不要使用索引...原创 2019-07-26 17:57:58 · 1626 阅读 · 0 评论 -
一张图告诉你变量的初始化顺序
原创 2019-07-30 17:29:56 · 228 阅读 · 0 评论 -
线程池的好处以及注意事项
好处·1.复用线程, 减少在创建和销毁线程上所花的时间以及系统资源的开销。·2.提高响应速度。 当任务到达时, 任务可以不需要等到线程创建就可以立即行。·3.提高线程的可管理性。 使用线程池可以对线程进行统一管理。·4.如果不使用线程池, 有可能造成系统创建大量线程而导致OOM。注意事项1.至于用有界队列还是无界队列,根据业务场景来选怎。如果内存溢出概率大于...原创 2019-07-30 14:06:09 · 627 阅读 · 0 评论