Java开发环境的配置首先我们要下载JDK。到Oracle官网上去下载即可,目前最新版是JavaSE8u25。开始我很混乱,JavaSE和JDK是什么关系呢?最后查了一下JavaSE=JDK+JRE。JDK就是Java开发工具包,JRE就是Java运行环境,我们做开发,需要本地运行调试,直接安装JavaSE就好了。JavaSE是Java开发的标准版本,JavaEE和JavaME都是基于它的。安装好JDK后,我们需要配置本地开发环境。在我们计算机的属性中高级
系统 2019-08-12 01:33:41 2274
如果大家处理过多语言资源,那么对JDK这个自带的native2ascii肯定不会陌生,它能够帮我们把不同的编码转化成统一的unicode编码,来实现国际化。一般我们都这么用,假设我们有这么一个文件zh.txt,其内容只有这么一行:然后我们使用native2ascii来将其内容转成unicode编码:很简单,但是你考虑过zh.txt文件的编码了吗?如果这个zh.txt文件是别人提供给你的,可能里面是采用了别的编码,那么如果仅仅是通过简单的native2asc
系统 2019-08-29 23:16:12 2273
JavaNIO开始支持scatter/gather,scatter/gather用于描述从Channel中读取或者写入到Channel的操作。分散(scatter)从Channel中读取是指在读操作时将读取的数据写入多个buffer中。因此,Channel将从Channel中读取的数据“分散(scatter)”到多个Buffer中。聚集(gather)写入Channel是指在写操作时将多个buffer的数据写入同一个Channel,因此,Channel将多
系统 2019-08-29 23:00:18 2273
程序设计模式的有趣解释-追MM创建型模式1、FACTORY一追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。2、BUILDER
系统 2019-08-29 22:48:37 2273
Java实用经验总结--日期、数字篇1.日期部分对于像日期、时间和钱这样的对象来说,不同的国家、地区都有不同的显示格式。即便是同一地区,也可能存在差异。但是在不考虑国家化,时间格式相对固定的情形下,对于时间的处理还是相对比较简单的。在我最近所作的一个小程序里面,遇到了一些与日期有关的且不考虑国际化和复杂格式的问题。例如如何求两个日期所差的天数,所差的月数;将日期类转化为规定格式的字符串,将规定格式的日期字符串转成相应的日期类等等。下面我就以源码的形式逐一介
系统 2019-08-29 22:44:17 2273
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,特别是先学c、c++后学java的程序员。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。比如函数参数类型是自定义的类时,此时便是引用传递而不是值传递。以下是一个小例子:1publicclassA{2publicStringname;3}4publicclasstestClone{5publi
系统 2019-08-29 22:02:42 2273
敏捷开发的理念已经流行了很长的时间,在敏捷开发中的开发迭代阶段中,我们可以通过五个步骤,来有效的提高整个项目的代码质量。Java项目开发过程中,由于开发人员的经验、Java代码编写习惯,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维护,需要较大的测试投入和周期等问题。这些问题在一个项目组初建、需求和设计均具有不完全可预期性和完备性的全新项目中将尤为突出。如图1所示,敏捷开发过程经历需求调研,用例分析和用例分解,进入开发迭代阶段。在每个
系统 2019-08-29 21:58:48 2273
SeleniumWebDriver测试弹出窗口,包括识别弹出窗口,将driver转到新的窗口,在新的串钩中执行而是步骤,然后再转换到最初的窗口。通过名称(name)识别和处理:SeleniumWebDriver允许我们通过name属性或窗口的句柄来识别窗口,然后通过WebDriver.switchTo().window()方法在不同的窗口之间进行切换。windowname属性的定义name属性可设置或得到窗口的名称,其值为字符串。语法如下:1window.
系统 2019-08-12 09:27:14 2273
Java中的四种引用强、软、弱和虚引用,对应的生命周期:强>软>弱>虚引用.除强引用外,其他3种引用都需要与ReferenceQueue联合使用,当引用被垃圾回收机制回收的时候,引用会自动放入ReferenceQueue中.WeakReference和SoftReference可以用来做Cashe,文章第二段引用了JavaEye文章,介绍Googlecollection的MapMaker方便生成ConcurrentMap,可以方便的设置map中expire
系统 2019-08-29 23:49:34 2272
Java语句-------关键语句介绍一、while语句一般形式:while(条件表达式){语句体………}执行过程:条件表达式为真,执行语句体。否则,退出!二、dowhile语句一般形式:do{语句体…….}while(条件表达式);执行过程:先执行一次语句体,判断条件表达式是否为真,为真再执行do语句中的语句体。为假,退出。需要注意:与while语句区别1.while(条件表达式)后面有分号;2.不管条件表达式是否为真,语句体均会执行一次。三、for语句
系统 2019-08-29 23:22:03 2272
简单的静态函数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 2272
当我们或许是煞费苦心所敲的代码无法运行时,可能我们更多想到的不是自己所敲的代码存在错误,而是系统或者某些外在的客观的原因。多次的运行失败之后,渐渐的意识到很多错误并不是系统的外在的原因,而是自己丢三拉四的缘故,下面就结合自己所敲的寥寥的代码总结一下Java程序不能运行的几种原因。一.系统存在问题(运行环境或配置问题):很正常,当一个程序无法运行时,第一时间想到的是最大的一个问题:环境抑或系统出现了这样或那样的问题,人之常情。对这种问题,一般情况下很容易找到
系统 2019-08-29 22:30:09 2272
Java多线程程序设计详细解析一、理解多线程多线程是这样一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其它线程共享一个存储空间,这使得线程间的通信远较进程简单。多个线程的执行是并发的,也就是在逻辑上“同时”,而不管是否是物理上的“同时”。如果系统只有一个CPU,那么真正的“同时”是不可能的,但是
系统 2019-08-29 22:08:19 2272
1importjava.sql.Connection;2importjava.sql.DriverManager;34privatestaticfinalStringURI="jdbc:oracle:thin:@localhost:1521:orcl";5//驱动路径6privatestaticfinalStringUSER="testUser";//数据库名7privatestaticfinalStringPWD="admin";//数据库密码8/--9
系统 2019-08-12 01:52:10 2272
1、概述在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程序才能使用它。这就像在日常生活中,从商店购买了某样物品后,如果有用,就一直保留它,否则就把它扔到垃圾箱,由清洁工人收走。一般说来,如果物品已经被扔到垃圾箱,想再把它捡回来使用就不可能了。但有时候情况并不这么简单,你可能会遇到类似鸡肋一样的物品,食之无味,弃之可惜。这种物品现在已经无用了,保留它会占空间,但是立刻扔掉它也不划算,因
系统 2019-08-29 22:32:21 2271