java基础
文章平均质量分 80
aaa11111232
这个作者很懒,什么都没留下…
展开
-
synchronize实现原理及锁升级
在刚接触jdk5的时候,网上都说能尽量不实用synchronize就不用,同时有替代方案,比如轻量级锁,locks,但是在jdk6之后对synchronized有了优化。 应用场景 既然引入了同步锁的概念,那啥时候可以用?当然是处在共享资源且有多个线程可能对其操作的情况。比如定义了一个全局变量,由多个线程对其进行+1操作,如果让不同的线程来执行,在操作时获取到的值可能是旧的,这就会导致最终的结果跟预期不一致,这时我们就需要保证其安全性。 既然说到保证安全性,那么肯定会对程序执行的效率产生影响,毕竟这是一个互原创 2020-08-30 16:28:11 · 397 阅读 · 0 评论 -
线程的状态和启停
线程的状态和启停 状态 线程的状态分别为: new 在新建后的线程,状态就会变成new,比如 new Thread(()->{ System.out.println("i am print"); }); //或者实现runnable接口,其实Thread就实现了runnable接口 runnable 当调用了线程的.start()方法时,就处于待执行的状态 terminate 当线程执行完毕后,处于终止状态,可以根据 Thread.currentThread().isAlive() 来判断线程原创 2020-08-30 10:47:01 · 311 阅读 · 0 评论 -
jdk和jre的区别
jdk: java development kit —-》 java开发工具包jre: java runtime environment —》 java运行环境当我们需要开发java程序的时候,我们需要使用jdk,如果只是简单的执行java程序,单单下载jre即可图侵删:原创 2016-03-02 13:20:40 · 248 阅读 · 0 评论 -
Java支持的数据类型有哪些?什么是自动拆装箱?
java中的8种基本数据类型:boolean byte char short int float double long 自动拆装箱的问题引入:由于在一开始学习java的时候,”万物皆对象“这种面向对象的看问题方式,时刻围绕在脑海中。因为静态的变量和基本数据类型不属于对象,但是由8种基本数据类型的包装类解决了这个困惑。在jdk1.5中引入了自动拆装箱的新特性,在jdk1.5之前,我们想要使用inte原创 2016-03-03 00:03:41 · 6858 阅读 · 0 评论 -
什么是JVM?java被称作是平台无关的编程语言?
要知道java虚拟机是什么,从虚拟机定义开始:虚拟机是模拟某种计算机体系结构,用来执行某种特定指令集的软件。 虚拟机分成系统虚拟机(VM ware 、Virtual box)和进程虚拟机(adobe flash player 、JVM等等),如果进一步细分,再加上高级语言的筛选,就有jvm、.net ClR 。怎样才算是JVM ?要成为jvm,要通过java tck(technology comp原创 2016-03-02 11:40:49 · 3606 阅读 · 2 评论 -
”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?
static关键字在《java编程思想》中有这样一段话形容static关键字: 通常,我们创建类时会指出那个类的对象的外观与行为。除非用new 创建那个类的一个对象,否则实际上并 未得到任何东西。只有执行了new 后,才会正式生成数据存储空间,并可使用相应的方法。 但在两种特殊的情形下,上述方法并不堪用。一种情形是只想用一个存储区域来保存一个特定的数据——无 论要创建多少个对象原创 2016-03-02 16:44:31 · 18835 阅读 · 0 评论 -
数据结构之链表面试题汇总(一)--查找单向链表的中间节点、倒数第K个节点
date: 2016-08-18 9:12:22 title: 数据结构之链表面试题汇总(一)–查找单向链表的中间节点、倒数第K个节点categories: 数据结构版权声明:本站采用开放的[知识共享署名-非商业性使用-相同方式共享 许可协议]进行许可所有文章出现的代码,将会出现在我的github中,名字可以根据类全名来找,我在github中的文件夹也会加目录备注。这篇文章主要讨论单向链表的应用,原创 2017-11-02 21:14:56 · 588 阅读 · 0 评论