拥有Java标签的文章
Java

Java的那些故事

一、Java的故事1、Java的诞生让我们把时空切换到1982年,那一年一个伟大的公司诞生于美国斯坦福大学校园,它的名字叫SunMicrosystems,直译的话叫太阳微系统公司,我们平时就叫他Sun,事实上Sun是StanfordUniversityNetwork的缩写。Sun在行业中被认为是最具创造性的企业。是极少数几个同时拥有自己微处理器、电脑系统、操作系统的公司。然而,1990年的一天,Sun的总裁麦克尼利(McNealy)听说他最好的一个工程师詹

系统 2019-08-29 23:03:38 1263

Java

Java中assert和静态导入的使用

Java中assert和静态导入的使用最近一直在做测试,发现了一些JDK1.5中的一些新的语法特性,在开发的时候确实省了不少时间,在此做简要的记录:assert的用法assertexpression1;assertexpression1:expression2;如果expression1为true,则不抛出错误,程序正常运行,expression2也不会执行。如果expression1为false,则抛出异常,程序中断跳出,expression2执行。一般

系统 2019-08-29 22:53:31 1263

Java

浅谈Java串行端口技术协议

串行通讯慨述串行通讯协议有很多种,像RS232,RS485,RS422,甚至现今流行的USB等都是串行通讯协议。而串行通讯技术的应用无处不在。可能大家见的最多就是电脑的串口与Modem的通讯。记得在PC机刚开始在中国流行起来时(大约是在90年代前五年),那时甚至有人用一条串行线进行两台电脑之间的数据共享。除了这些,手机,PDA,USB鼠标、键盘等等都是以串行通讯的方式与电脑连接。而笔者工作性质的关系,所接触到的就更多了,像多串口卡,各种种类的具有串口通讯接

系统 2019-08-29 22:48:58 1263

Java

推荐给所有在自学JavaWeb的朋友们---自学者之参

在Java技术领域,JavaWeb应用开发空前活跃,致使许多程序员都积极地学习有关JavaWeb开发技术,但是面对众多的开发技术,许多人会感到困惑,不知如何学习,如何在实战中应用这些技术。本书就是为完整地学习JavaWeb开发技术后,想整合应用且逐步过渡到轻量级JavaEE开发的人员准备的。本书内容融入了作者多年的JavaWeb开发经验。本书第二版在前版的基础上扩充了相关的基础知识,并提供了更贴切的实用型案例。此书被多所高校采用为教材,在第二版的修订中,因

系统 2019-08-29 22:44:27 1263

Java

Java XML API 漫谈

【转】http://www.iteye.com/topic/75在IBM的developerWorks上有几篇非常优秀的关于JavaXMLAPI的评测文章,它们是:http://www-900.ibm.com/developerWorks/cn/xml/x-injava/index.shtmlhttp://www-900.ibm.com/developerWorks/cn/xml/x-injava2/index.shtmlhttp://www-900.ib

系统 2019-08-29 22:43:25 1263

Java

java调用系统命令

简单的静态函数SysCmd.java:importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassSysCmd{publicstaticStringautoExec(StringcmdLine)throwsIOException,InterruptedException{if(System.getProperty("os.

系统 2019-08-29 22:37:37 1263

Java

《java并发编程实践》第三章学习笔记

第三章主要讲的共享对象,这章有些内容比较抽象,我理解其中的一些东西费了一些周折。所以把这些理解记录下来,以免以后遗忘,有些内容是个人的理解,如果您对我的理解有异议,请提出来共同讨论。3.1可见性这里提到了“重排序”,指的是操作系统对线程分片后,针对不同线程的调度是没有特定顺序的。3.1.1过期数据貌似没有什么可说的...3.1.2非原子的64位操作这里指的是对double和long类型64位的变量。对于这种数据编写多线程程序的时候最好要加volatile标

系统 2019-08-29 22:18:41 1263

Java

计算器制作JAVA版(第二步,表达式结构检查)

这个问题一个特点--麻烦!如何检查结构呢,结构错误是因为不符合我们的目标要求。在这里我们需要一个格式正确的表达式序列,那么我们就得视具体情况而作出判断。在这里可是涉及一个巨大的数学思想的!!!其实比较简单,就是我们高中数学里面最常用到的”分类讨论“。如果你有一个缜密的思路,在这里是非常好的,我这里的分析估计疏漏了大量的情况,希望大家能够一起补充,共同进步。首先是比较简单的一部分,括号数量以及对应情况是否正确。那么到底什么是正确的对应呢?类似于这种的()表达

系统 2019-08-29 22:17:21 1263

Java

java类加载器学习1——类加载器的基本概念

一、程序使用java类的运行顺序当程序主动使用某个类的时候,若该类还未被加载至内存中,系统会通过加载,连接,初始化三个步骤对类进行初始化,有事也把这三个步骤称为类加载或者类的初始化。1类的加载将被编译的.java而成为.class字节码读入JVM内存并为之创建一个java.lang.Class对象,也就是说当程序中使用任何类的时候系统都会为之建立一个java.lang.Class对象。类的加载由类加载器完成,类加载器通常有JVM提供,我们称JVM提供的类加

系统 2019-08-29 22:04:23 1263

Java

Java多线程-volatile的原理与技巧

volatile,用更低的代价替代同步为什么使用volatile比同步代价更低?同步的代价,主要由其覆盖范围决定,如果可以降低同步的覆盖范围,则可以大幅提升程序性能.而volatile的覆盖范围仅仅变量级别的.因此它的同步代价很低.volatile原理是什么?volatile的语义,其实是告诉处理器,不要将我放入工作内存,请直接在主存操作我.(工作内存详见java内存模型)因此,当多核或多线程在访问该变量时,都将直接操作主存,这从本质上,做到了变量共享.v

系统 2019-08-29 22:02:41 1263

Java

java之4天 数组排序,查找.进制转换

1.数组的定义格式1.元素类型[]数组名=new元素类型[元素个数或者数组长度];int[]arr=newint[5];//推荐intarrs[]=newint[5];2.静态初始化方式不能写长度int[]arrs=newint[]{3,1,4,5,6,2};int[]arrs={3,1,4,5,6,2};//好像是在jdk5.0后才能使用3.boolean类型的数组默认值为false数组的操作publicstaticvoidmain(String[]ar

系统 2019-08-29 22:00:03 1263

Java

Java内存模型详解[转]

内存模型(memorymodel)内存模型描述的是程序中各变量(实例域、静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存和从内存取出变量这样的低层细节.不同平台间的处理器架构将直接影响内存模型的结构.在C或C++中,可以利用不同操作平台下的内存模型来编写并发程序.但是,这带给开发人员的是,更高的学习成本.相比之下,java利用了自身虚拟机的优势,使内存模型不束缚于具体的处理器架构,真正实现了跨平台.(针对hotspotjvm,jrock

系统 2019-08-12 09:30:25 1263

Java

JAVA面试题解惑系列(四)——final、finally和

好东西分享final、finally和finalize的区别是什么?这是一道再经典不过的面试题了,我们在各个公司的面试题中几乎都能看到它的身影。final、finally和finalize虽然长得像孪生三兄弟一样,但是它们的含义和用法却是大相径庭。这一次我们就一起来回顾一下这方面的知识。final关键字我们首先来说说final。它可以用于以下四个地方:定义变量,包括静态的和非静态的。定义方法的参数。定义方法。定义类。我们依次来回顾一下每种情况下final的

系统 2019-08-12 09:30:16 1263

Java

Java安全通信、数字证书及应用实践

摘要:在本文中,我用详细的语言和大量的图片及完整的程序源码向你展示了在JAVA中如何实现通过消息摘要、消息验证码达到安全通信、以及用Java的工具生成数字证书,和用程序给数字证书签名、以及用签名后的数学证书签名applet突破applet的访问权限的过程,给出了全部例子的详细代码。通过本文中你可以学到以下知识:●程序间如何安全通信●什么是及如何生成消息摘要●什么是及如何生成消息验证码●如何使用Java工具生成和维护数字证书库●如何用程序给数字证书验证签名●

系统 2019-08-12 09:30:06 1263