Fork me on GitHub
摘要: Java中static关键字主要用于内存管理(是的,你没听错)。我们可以将它应用到变量、方法、代码块、嵌套类以及导入包中。静态关键字属于类,而不是类的实例。 1.静态变量 优点:节省内存 2.静态方法 限制:主要有两个限制 Q&A:为什么Java的main方法是静态的? 因为调用一个静态方法不需要一 阅读全文
posted @ 2018-08-23 22:28 gitmoji 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1. 快捷键或有用的操作 查看类 查找替换 重构/代码生成 显示/依赖 2.有用的插件 阅读全文
posted @ 2018-08-23 21:22 gitmoji 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 在多线程环境中,volatile能保证共享变量的可见性以及一定程度的有序性。单例模式有多种写法,有线程安全的和非线程安全的,有懒汉式和饿汉式,有利用static关键字修饰变量、方法、代码块、内部类的实现,还有用枚举实现的,今天我们讨论下单例模式里面较为复杂的double check写法,先看下代码: 阅读全文
posted @ 2018-08-01 19:57 gitmoji 阅读(2188) 评论(2) 推荐(0) 编辑
摘要: 空指针异常让人厌恶,恐怕是实际应用中出现次数最多的异常了,下面是如何避免NullPointerException出现的技巧 使用Apache的lang包的工具类来判空和非空:StringUtils和CollectionUtils 阅读全文
posted @ 2018-07-26 22:24 gitmoji 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 升级了JDK到jdk10,结果悲剧了,爆出了以下错误: 乍一看,是缺少了某个包,经查找资料发现:JAXB API是Java EE API,由于JDK9提出的模块化的概念,导致jjava.ee模块不再以后的版本里默认提供。当然,还可以通过maven依赖引入他们,例如: 但这不是一种推荐的方式,因为需要 阅读全文
posted @ 2018-07-18 17:05 gitmoji 阅读(5456) 评论(0) 推荐(0) 编辑
摘要: 1.开发者友好的软件 2.显卡驱动,没有较好的解决方案 3.更换windows系统 阅读全文
posted @ 2018-07-16 21:08 gitmoji 阅读(191) 评论(0) 推荐(0) 编辑
摘要: tips:如果有什么让你不理解的代码,使用反编译工具jad查看反编译后的java代码;如果还是晦涩难懂,利用反汇编工具javap查看汇编代码 阅读全文
posted @ 2018-05-14 11:54 gitmoji 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 编译一次,到处运行;指的是Java语言的跨平台能力,而这种能力主要由Java虚拟机提供的,那Java语言从源代码到可以执行的机器码是怎样编译、运行的呢?Java源代码经过javac编译后生成屏蔽操作系统和硬件的字节码,再经由JVM编译、解释执行。 Java语言对字节码文件提供了三种执行方式: 通过指 阅读全文
posted @ 2018-05-05 12:59 gitmoji 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 线程相关概念: 并发:在一段时间内,两个或以上的任务交替执行;并发不是同时执行,只是在很短的时间内看起来像是同时执行,例如:一个core的n个线程处理器可以并发执行任务,但是不能并行执行任务 并行:在同一时刻,两个或以上的任务同时执行;并行是真正的同时执行,n个core的处理器能够同时处理n个任务 阅读全文
posted @ 2018-04-23 00:23 gitmoji 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 注:集成开发环境一般都会支持git,比如jetbrains公司的开发工具,有易用的图形界面支持 阅读全文
posted @ 2018-02-08 11:45 gitmoji 阅读(724) 评论(0) 推荐(0) 编辑