java基础知识
文章平均质量分 58
coolwzjcool
这个作者很懒,什么都没留下…
展开
-
第八讲 Java网络编程 (转)
课前思考 1. 什么是TCP/ IP协议? 2. TCP/IP有哪两种传输协议,各有什么特点? 3. 什么是URL? 4. URL和IP地址有什么样的关系? 5. 什么叫套接字(Socket)? 6. 套接字(Socket)和TCP/IP协议的关系? 7. URL和套接字(Socket)的关系?8.1 网络编程基本概念,TCP/IP协议简介8.1.1 网络基础知识网络编原创 2007-06-22 14:15:00 · 907 阅读 · 0 评论 -
Sun 推荐的命名规范
1 ,类名要首字母大写,后面的单词首字母大写 2 ,方法名的第一个单词小写,后面的单词首字母大写 3 ,变量名的第一个单词小写,后面的单词首字母大写 为了使 JavaBean 的属性名和存取方法都符合规范, Sun 在 JSR 文档中规定了属性名和存取方法名的映射规则: ① 属性名对应的存取方法为 ge t/set 加上首字母大写的属性名,如属性 userName 的存转载 2010-03-23 15:52:00 · 992 阅读 · 0 评论 -
看看计算结果
存在某一个类:public class FirstClass { private int i=10; public void outInteger(int i){ i++; System.out.println(i); }} 另外有一个类 public class SecondClass { private static f原创 2010-01-29 16:33:00 · 622 阅读 · 0 评论 -
java 初始化的顺序和步骤
大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台的代码,然后让我们判断输出的结果。这实际上是在考查我们对于继承情况下类的初始化顺序的了解。我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是(静转载 2010-01-08 09:35:00 · 678 阅读 · 0 评论 -
java.lang.OutOfMemoryError: PermGen space 解决大全
共分为两部分:第一部分:一般的解决办法PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen spa原创 2010-01-05 11:32:00 · 1528 阅读 · 0 评论 -
关于java的property文件
以下是我在一个博客中看到的,感觉写的不错,希望对大家有所帮助:这里暂且把XML格式放在一边吧,我们来看看Java使用的最多的.properties配置文件...今天,看到好几个J2EE的应用发布到服务器上的时候,都要在J2EE Container启动的时候,在启动的脚本上面添加启动的参数: -DSystemAConfigFile="XXXXX" -DSystemBCon原创 2009-12-15 10:12:00 · 1568 阅读 · 0 评论 -
TOMCAT内存大小调整
Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个java虚拟机。JAVA程序启动时JVM都会分配一个初始内存和最大内存给这个应用程序。这个初始内存和最大内存在一定程度都会影响程序的性能。比如说在应用程序用到最大内存的时候,JVM是要先去做垃圾回收的动作,释放被占用的一些内存。所以想调整Tomcat的启动时初始内存和最大内存就需要向JVM声明,一般的JAVA程序在运转载 2008-06-13 17:31:00 · 111092 阅读 · 4 评论 -
FTPCLIENT上传文件
上传Txt文件,需要传输格式为ascii(),没有试验过binary(),但应该也是可以的 但是上传Excel文件,必须使用binary(),使用ascii()上传的文件是不能打开的原创 2008-06-02 15:37:00 · 812 阅读 · 1 评论 -
JDK的两个JVM的区别
JDK包括2个JVM Java HotSpot Client VM(-client),为在客户端环境中减少启动时间而优化; Java HotSpot Server VM(-server),为在服务器环境中最大化程序执行速度而设计. 比较:Server原创 2010-07-27 17:07:00 · 883 阅读 · 0 评论 -
几个与JVM相关的JDK工具:jps, jstat, jmap
http://oracleseeker.com/2009/05/02/sun_jdk_jvm_tools/ 在项目中遇到OOM(Out of Memory)的问题,为了分析内存和JVM的垃圾回收器GC问题,一并把JVM相关的一些工具也研究了一下:jps:Java进程查看工具,实际上它和Unix/Linux上面的ps命令的功能差不多 jstat:Java内存使用情况监控工具转载 2010-02-03 14:42:00 · 1757 阅读 · 0 评论 -
优化变成了忧患:String.split引发的“内存泄露”
一直赞叹Sun对待技术的严谨和优雅(bless Sun)。Sun JDK中Java库的源代码,连注释都清清楚楚、规规范范,javadoc注解的使用也一丝不苟,读起来很熟舒服。因此,在日常工作和学习中,经常读读Java库的源代码,不亦乐乎?如果遇到诡异问题,源代码的帮助就更大了。闲话少说,回归正题。这几天,一直在为Java的“内存泄露”问题纠结。Java应用程序占用的内存在不断的、有规律的上转载 2010-02-02 12:40:00 · 870 阅读 · 0 评论 -
java 深刻理解 不断更新
1、java是跨平台的,是一门解释性语言,一条一条地执行,解释器就是jvm,所以可以跨平台; C/C++是编译性语言,所有编译完后再执行,跨平台的时候需要重新编译一次,以适应新的平台。2、向上转型,继承 白马非马 父类对象转化为子类必须强制(SonClass)fatherClass 子类当为父类 自动 func(FatherClass c) --〉 func(s原创 2010-01-21 10:03:00 · 849 阅读 · 0 评论 -
java 去掉字符串的空格(中间空格,左右空格)
比如 时间字符串,去掉‘-’,‘:’,与空格 String x = "2008-09-08 11:12:23"; x=x.replace(-, ).replace(:, ).replaceAll(" ",""); 输出:20080908111223原创 2008-10-20 11:23:00 · 10621 阅读 · 0 评论 -
linux下java环境变量的设置
1、下载JDK1.6.0.29,并安装http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u29-download-513648.html下载完毕后是bin文件jdk-6u29-linux-x64-rpm.bin;为了安装jdk需要分两步进行(1)为该文件授权 chmod +x jdk-6u29-linux-x64-原创 2011-10-21 17:39:48 · 1701 阅读 · 0 评论 -
JMS学习笔记
一、概述·JMS是用于面向消息的中间件相互通信的应用程序接口(API)·既支持点对点(P2P)的域,也支持发布/订阅(Publish/Subscibe)类型的域·提供两大功能:消息生产和消息消费·JMS提供的消息服务包括两种机制:1、P2P 单个消费者消费掉(Queue队列)Client1发送消息给消息服务中的一个队列,而Client2则从这个队列中取出消息2、发布/订原创 2012-03-07 13:54:13 · 889 阅读 · 0 评论 -
java 深度历险 总结笔记
1、jdk和java 2 sdk是一个意思。2、所有高级开发工具(eclipse,jbuilder)抛出的错误异常根源都是jdk。3、jdk,jre,jvm三者关系: jdk安装后jdk安装目录里面就会有jre,此外在program/java目录还会安装一套jre;这两套原创 2010-08-09 18:26:00 · 649 阅读 · 0 评论 -
java的关键字transient
Java的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想用serialization机制来保存它。为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transient。transient是Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transien转载 2011-06-16 21:30:00 · 540 阅读 · 0 评论 -
Webservice之CXF组件
1.CXF是基于JAX-WS实现的,JAX-WS规范是一组XML web services的JAVA API,它使用户无需编写复杂的SOAP ENV,WSDL。在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP。在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码。JAX-WS的运行时实现会将这些API的调用转换成为对于SOAP消息。在服务器端转载 2011-06-21 16:30:00 · 1181 阅读 · 0 评论 -
java.sql.date 与 java.util.date及使用方法
java.sql.date 与 java.util.date java.util.Date 就是在除了SQL语句的情况下面使用java.sql.Date 是针对SQL语句使用的,它只包含日期而没有时间部分它都有getTime方法返回毫秒数,自然就可以直接构建java.util.Date d = new java.util.Date(sqlDate.getTime());...ja原创 2007-03-28 10:50:00 · 4357 阅读 · 0 评论 -
Java的数组(Array)、Vector、ArrayList、HashMap的异同
array(数组)和Vector是十分相似的Java构件(constructs),两者全然不同,在选择使用时应根据各自的功能来确定。1、数组:Java arrays的元素个数不能下标越界,从很大程度上保证了Java程序的安全性,而其他一些语言出现这一问题时常导致灾难性的后果。Array可以存放Object和基本数据类型,但创建时必须指定数组的大小,并不能再改变。值得注意的是:当Array中原创 2007-04-29 11:30:00 · 995 阅读 · 1 评论 -
java编写的一个缓存类cache类实例
/*/-----------------------------------------------/ This class is a queue cache in multithreading,/ it store object at tail,and remove object at/ head,and it is thread-safe./--------------------------原创 2007-04-29 13:11:00 · 3654 阅读 · 1 评论 -
java线程实例详析
在 Java 程序中使用多线程要比在 C 或 C++ 中容易得多,这是因为 Java 编程语言提供了语言级的支持。本文通过简单的编程示例来说明 Java 程序中的多线程是多么直观。读完本文以后,用户应该能够编写简单的多线程程序。 为什么会排队等待? 下面的这个简单的 Java 程序完成四项不相关的任务。这样的程序有单个控制线程,控制在这四个任务之间线性地移动。此外,因为所需的资源原创 2007-05-11 09:52:00 · 1683 阅读 · 0 评论 -
java执行exe,bat 文件的方法
======================exe======================= try { Process proc = Runtime.getRuntime().exec(YourCommand);//你的exe文件名 BufferedReader in = new原创 2007-06-05 16:48:00 · 1101 阅读 · 0 评论 -
简单的FTP客户端 sun.net.ftp.FtpClient
某些数据交换,我们需要通过ftp来完成。 sun.net.ftp.FtpClient 可以帮助我们进行一些简单的ftp客户端功能:下载、上传文件。 但如遇到创建目录之类的就无能为力了,我们只好利用第三方源码,比如 com.ent转载 2008-06-02 15:39:00 · 954 阅读 · 0 评论 -
关于定时任务的一点思考(二)
定时任务的参数化管理,需要能够灵活配置,其中的参数主要有:间隔时间(IInterval Time)延迟时间(Delay Time)起始时间(Begin Time)终止时间(End Time)此外,如果有其它的要求,也可以进行参数化,例如工作任务需要几条线同时进原创 2011-09-11 08:46:57 · 607 阅读 · 0 评论 -
关于定时任务的一点思考
现在关于时间调度、任务调度开源的东西不少,比较流行的是quartz框架,它已经集成到spring里面了,操作起来十分方便。 这里我不想说太多关于Quartz的问题,通过观察源码,发现里面就是一个Scheduler容器维护Job以及Trigger,通过Job和Trigger原创 2011-09-02 13:38:56 · 615 阅读 · 0 评论 -
Memcached 深度研究与分析
Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得对这个出色的开源软件更深入的了解,并可以转载 2011-08-31 11:14:39 · 553 阅读 · 0 评论 -
代码检查 整理汇总(一)
当下,正在实施代码检查的工作,先将检查的结果和建议列举如下:(一)2011.08.011、中文注释 所有的javaBean的属性都建议增加中文说明2、仅保留需要的利用eclipse生成的构造函数,除了缺省的默认构造函数,带参数的构造函数如果需要就保留,不需要就原创 2011-08-29 13:18:10 · 600 阅读 · 0 评论 -
java中String字符串的替换函数:replace与replaceAll的区别
例如有如下x的字符串 String x = "[kllkklk\\kk\\kllkk]";要将里面的“kk”替换为++,可以使用两种方法得到相同的结果 replace(CharSequence target, CharSequence replacement)原创 2011-08-04 10:23:52 · 204544 阅读 · 2 评论 -
关于随机数的获取
如果告诉你一个需求:得到1000000个10以内的随机数,是怎么做的呢? 可能大多数人都会利用Math.random():for(int i =0;i p=(int)(Math.random()*10);经研究发现Math类中的random()方法的源原创 2011-08-03 16:26:49 · 943 阅读 · 0 评论 -
java File读写大全
使用Java操作文本文件的方法详解 摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中 write(char[] ch,int off,intlength),flush()和close()方法为抽原创 2011-06-21 16:56:00 · 685 阅读 · 0 评论 -
jvm工作原理
Java虚拟机一、什么是Java虚拟机Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。1.为什么要使用Java虚拟机Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。转载 2012-03-09 16:20:52 · 720 阅读 · 0 评论