一.上集回顾 在<Java入门到实践系列(1)--Java简介>中提到过,Java程序是运行在Java虚拟机的,也展示过下面这张图. JDK:Java程序开发工具包. JRE:Java运行时环境. JVM:Java虚拟机. 从这张图可以看出,JDK包含JRE,JRE包含JVM.而我们作为Java开发人员,肯定是要安装JDK的啦. 二.JDK的安装 JDK1.8官网下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-…
一.Java的发展历史 Java是由SUN公司的开发人员James Gosling及其领导的一个开发小组与1995年开发并推出的一门高级编程语言.经过二十几年的发展已经成为最受程序员欢迎.使用最为普遍的编程语言之一. 2004年J2SE 5.0版本问世,更新力度大,Java从此进入了发展的快车道.并将J2SE 5.0改名为Java SE 5.0. 2009年Oracle公司(甲骨文)收购Sun公司. 2014年,Java SE 8发布.(企业常用版本) 以上年份并不重要,只是为了让大家简单的了解…
简介: Java™ 5.0 第一次让使用 Java 语言开发非阻塞算法成为可能,java.util.concurrent 包充分地利用了这个功能.非阻塞算法属于并发算法,它们可以安全地派生它们的线程,不通过锁定派生,而是通过低级的原子性的硬件原生形式 —— 例如比较和交换.非阻塞算法的设计与实现极为困难,但是它们能够提供更好的吞吐率,对生存问题(例如死锁和优先级反转)也能提供更好的防御.在这期的 Java 理论与实践 中,并发性大师 Brian Goetz 演示了几种比较简单的非阻塞算法的工作方…
在不只一个线程访问一个互斥的变量时,所有线程都必须使用同步,否则就可能会发生一些非常糟糕的事情.Java 语言中主要的同步手段就是synchronized 关键字(也称为内在锁),它强制实行互斥,确保执行 synchronized 块的线程的动作,能够被后来执行受相同锁保护的synchronized 块的其他线程看到.在使用得当的时候,内在锁可以让程序做到线程安全,但是在使用锁定保护短的代码路径,而且线程频繁地争用锁的时候,锁定可能成为相当繁重的操作. 在 “流行的原子” 一文中,我们研究了原子…
分类: java基础 1.为什么java如此流行,为什么历史选择了它? 因为它拥有全新的编程思想,更接近人们的语言习惯,由于其编译器把代码编译成字节码,然后再不同的平台上运行分别用不同的虚拟机去解释字节码,让同一个源程序可以在不用的平台上运行,虽然没有C,或者C++运行速度快,但是这个通过中间的解释运行的形式,是其一个得以发展的根本. 2.java程序的特点? 1.完全面向对象. 2.其程序最小单位是类.(但是类可以有设置其属性,方法等) 3.一个源程序里只有一个public类,亦可省略. 4.…
在不只一个线程访问一个互斥的变量时,所有线程都必须使用同步,否则就可能会发生一些非常糟糕的事情.Java 语言中主要的同步手段就是 synchronized 关键字(也称为内在锁),它强制实行互斥,确保执行 synchronized 块的线程的动作,能够被后来执行受相同锁保护的 synchronized 块的其他线程看到.在使用得当的时候,内在锁可以让程序做到线程安全,但是在使用锁定保护短的代码路径,而且线程频繁地争用锁的时候,锁定可能成为相当繁重的操作. 在 “流行的原子” 一文中,我们研究了…
笔者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [Java安全技术探索之路系列:Java可扩展安全架构]章节文件夹 [Java安全技术探索之路系列:Java可扩展安全架构]之中的一个:Java可扩展安全架构开篇 [Java安全技术探索之路系列:Java可扩展安全架构]之二:JCA(一):JCA架构介绍 [Java安全技术探索之路系列:Java可扩展…
源码详解系列均基于JDK8进行解析 说明 在Java容器详解系列文章的最后,介绍一个相对特殊的成员:WeakHashMap,从名字可以看出它是一个 Map.它的使用上跟HashMap并没有什么区别,所以很多地方这里就不做过多介绍了,可以翻看一下前面HashMap中的内容.本篇主要介绍它与HashMap的不同之处. WeakHashMap 特殊之处在于 WeakHashMap 里的entry可能会被垃圾回收器自动删除,也就是说即使你没有调用remove()或者clear()方法,它的entry也可…
找工作告一段落. 最后的工作呢,和java紧密相关,也是阴差阳错,不过都是软件开发,都好了,不过以后侧重点肯定是在java这边,php有机会还是一直学下去的,那么美的说~ Java开发第一季  一.简介 1.1 Java SE——基础核心: 以此为基础,又分为Java EE(企业应用开发,JSP等),Java ME(嵌入式开发,安卓等): JVM(Java Virtual Machine): Java虚拟机,使Java代码可以跨平台运行: .java——>编译器——>.class——>解…
在编写Java的过程中,我们需要对一些程序进行注释.除了方便自己阅读之外,我们还需要为他人更好地理解我们的程序.因此,我们需要对一些程序进行注释,这些注释可以是编程思想,也可以是程序的作用,可以说是Java入门基础了!         想知道更多Java基础内容可以参考以下视频 ↓ ↓ ↓ Java300集零基础适合初学者视频,Java入门基础 注释不是编程语句,因此被编译器忽略.总之,这对我们自己和其他人来说都是很方便的,希望大家都可以养成随手注释的好习惯,这样就算过了很久也可以根据注释内容来…