java基础回顾
朝着希望前进
这个作者很懒,什么都没留下…
展开
-
Java栈与堆
----对这两个概念的不明好久,终于找到一篇好文,拿来共享1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地转载 2013-10-14 15:19:24 · 805 阅读 · 0 评论 -
java中通过反射强力获取私有变量的值
我们都知道如果一个变量用private声明,那么他们的变量将只能在自身的类中或类的对象使用,对于其他类是不可见的。现在我将通过反射访问私有变量。 下面是一个私有变量的bean:public class PrivateField { private String name = "qq"; private String password = "qqpassword";}下面是得到私原创 2014-03-09 17:21:49 · 2926 阅读 · 0 评论 -
用java的程序得到本机的ip地址
我们一般查看ip地址都是在命令行中输入ipconfig。原来在java的jdk中也提供了获取本机ip地址的方法.而且得到ip地址就一句话。源码如下:package com.evan.server;import java.net.InetAddress;import java.net.UnknownHostException;public class HelloWebService原创 2014-03-30 18:50:17 · 1454 阅读 · 0 评论 -
java中的socket编程的入门源码
socke常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用通常通过"套接字"向网络发出请求或者应答网络请求。编写socke的服务器端代码:package com.evan.blog;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import原创 2014-03-30 18:54:16 · 1386 阅读 · 0 评论 -
Java比较日期
在Java中比较日期有API可以直接调用。实现源码如下:import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class JavaDateCompare { public static void原创 2014-05-04 10:59:56 · 1525 阅读 · 0 评论 -
Java判断字符串是否包含一些字符
在Java中判断字符串是否包含一些字符,在js中也会有同样的需求。下面是判断字符串包含字符的源码:package com.evantj.test;public class DateTEST { public static void main(String[] args) { String src = "98-2-2"; String dest = "-"; System.o原创 2014-04-03 18:27:33 · 2728 阅读 · 0 评论 -
将string数组转化为sql的in条件
例如:我想将String[] str = {"4","5","6"}转化为“‘4’,‘5’,‘6’”字符串。这样我就可以用sql查询:select * from tableName id in (字符串)了。项目中实现的源码如下: StringBuffer idsStr = new StringBuffer(); for (int i = 0; i < i原创 2014-05-21 15:11:44 · 10073 阅读 · 0 评论 -
JAVA序列化的作用
今天看了一下项目中的action大多数都没有进行序列化,所以项目上都是一大堆警告。序列化到底有什么作用呢?简单来说,Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,原创 2014-07-30 11:29:09 · 1264 阅读 · 0 评论 -
java中字符串判断相等能用不等号吗
在项目中有如下语句:Global.NOT_RESTRICT !=companyGroupInfo.getSex() 也就是“NR” != "NR" 返回true(明明应该返回FALSE呀)字符串在内存中是在字符串池中,如果字符串池已经存在字符串就直接引用地址即可。为什么此时就不行了。经过代码的一番验证发现,如果不涉及数据库,只是java代码对于字符串常量进行操作。Global.NOT_RES原创 2014-08-07 11:21:22 · 5128 阅读 · 0 评论 -
java退出for循环
今天在项目遇到了这样类似的代码如下:package csvExcel;public class ForTest { public static void main(String[] args) { for(int i=0;i<10;i++){ if("a".equals("")){ }else{ if(i==1){ System.原创 2014-08-11 17:22:17 · 3083 阅读 · 0 评论 -
stringbuffer什么都没添加的话,输出是空串
public class StringBufferTest { public static void main(String[] args) { StringBuffer sb = new StringBuffer(); if(2<0){ sb.append("ok"); } System.out.print(sb.toString()); }}你会原创 2014-01-09 10:41:43 · 1700 阅读 · 0 评论 -
java的访问控制符之一目了然
访问控制符同类同包子类同包其他类不同包子类不同包其它类public √ √ √ √ √protected √ √ √ √ default √ √ √ private √原创 2013-09-15 21:47:04 · 1181 阅读 · 0 评论 -
java synchronized到底锁住的是什么
刚学java的时候,只知道synchronized一个线程锁,能够锁住代码,但是它真的能像我想的那样,能够锁住代码吗? 在讨论之前先看一下项目中常见关于synchronized的用法: public synchronized void syncCurrentObject() { System.out.println(Thread.currentThread().ge原创 2016-04-19 13:48:48 · 9916 阅读 · 1 评论 -
eclipse切换工作空间
由于eclipse第一次打开的时候设置了工作空间,所以再次启动的时候就不会询问eclipse的工作空间怎么设置。可是我们有时需要通过eclipse知道工作空间的目录或者像重新设置工作空间。那么设置方法是:在eclipse中file---switch workspace --other 就可以重新设置工作空间了。如图:原创 2014-03-12 23:29:11 · 3435 阅读 · 0 评论 -
通过类名反射调用该类的main方法和成员方法
通过类名称调用该类的main方法、静态方法、无参的成员方法,有参数的成员方法。代码如下:package com.evan.exercise;import java.lang.reflect.Method;public class MainReflect { public static void main(String[] args) throws Exception { Stri原创 2014-03-11 22:50:29 · 1857 阅读 · 0 评论 -
windows-x64不是有效的win32应用程序解决办法
今天从Oracle官网上下载jdk1.7的64位版本,但是双击之后出现了下面的提示:官网上的解释是:官网上说我的操作系统是32位,下载的是64位jdk,但是我的系统确实是64位的。查看操作系统是多少位的方法:方法一:计算机右键----属性即可查看操作系统位数。如图:方法二:在cmd中输入systeminfo出现如下图:这说明我的系统确实是64位,原创 2014-02-20 12:50:10 · 9354 阅读 · 2 评论 -
java中参数个数可变的做法
需求:求n多个int类型相加的做法。 我们一般的想法都是用重载方法解决,但是由于你并不知道到底有多少个参数所以是不能够很好的满足需求。那么java提供了一个可变参数的做法。附上源码:public class VariableParameter { public static void main(String[] args) { System.out.println(Varia原创 2013-11-15 22:39:07 · 1317 阅读 · 0 评论 -
XHTML与HTML的重要区别
1、在XHTML中标记名称必须小写hello2、在XHTML中属性名称必须小写 src必须小写3、在XHTML中标记必须严格嵌套hello4、在XHTML中标记必须封闭hello5、在XHTML中即使是空元素的标记也必须封闭6、在XHTML中属性值用双引号括起来7、在XHTML中属性值必须使用完整形式 8、在XHTML中应该区分“内容标记” 和 “结构标记”原创 2013-11-02 13:45:06 · 1327 阅读 · 1 评论 -
java创建文件夹或文件
public static void createFile() throws IOException{ String path0 = "E:/evan"; String path1 = "E:/evan/zl.txt"; //创建文件时,这个文件夹必须存在,否则会报错。也就是“E:/evan”这个文件夹必须存在 File file = new File(path0); /原创 2014-01-08 16:25:15 · 1075 阅读 · 0 评论 -
java数字后面补零
我现在的有个需求是来判断客户端的版本号是否为最新,那么我就需要和服务器端存在的最新版本号作对比。虽然版本号的格式定义为1.x.x,但是"x"有一位或两位是不确定的,所以在比较版本后的时候我需要先将版本号的字符串长度保证一样。在将字符串进行比较。 现在需求说清楚了,下面是源码的实现:public class StringZero { public static void mai原创 2014-01-09 10:51:39 · 3198 阅读 · 0 评论 -
java时间精确到天
public class DateTest { public static void main(String[] args) { System.out.println(new java.sql.Date(new java.util.Date().getTime()).toString());//输出 :2014-01-09 }}原创 2014-01-09 10:02:11 · 4427 阅读 · 0 评论 -
java中复制文件的效率测试
项目中用到了图片的上传,对于上传过程中,图片的复制项目组用了两种方法,一种是以java的IO流,另外一种是用org.apache.commons.io.FileUtils的工具类,今天我测试了一下,单纯考虑文件的复制效率,apache的工具类的效率是普通io流读取的3倍。下面是测试源码:public class ImageTest { public static void main(S原创 2014-01-21 16:27:08 · 1291 阅读 · 0 评论 -
java中静态导入
需求:求两个数相减的绝对值。由于java的java.lang.Math已经提供了,所以我就直接用。 Math.abs(1-3)//结果为2静态导入与一般导入的区别:一般的import导入的是一个类或一个包。import java.util.List 或java.util.*静态导入的是类的一个方法或一系列方法。import static java.lang.Math.原创 2013-11-15 22:06:55 · 1222 阅读 · 0 评论 -
java连接mysql的写法
说起来真惭愧,今天学习android的时候想自己写个服务器端验证。由于平时一直都是用框架写的项目,但是觉得就是一个简单的验证,所以就想用jdbc连一下数据库,可是只大致记得该怎么写,真正写的时候还是在网上找了源码。不知道是不是自己复制惯了,最基本的都忘了。以此为戒吧!!在引包的时候我还在纠结是java.sql.*包下的还是com.mysql.jdbc.PreparedStatementcom包下的原创 2014-01-19 21:23:38 · 1360 阅读 · 0 评论 -
java读取src下的配置文件
新建一个普通的java项目,在src目录下有一config.propertes文件。配置文件里面的内容如下(就一句话): driverURL = jdbc:mysql://127.0.0.1:3306/evan下面是读取配置文件的java代码:package com.evan;import java.io.IOException;import java.io.InputStre原创 2014-02-24 18:13:31 · 1578 阅读 · 0 评论 -
eclipse中关联java doc文档的解决办法
今天在项目看到了BeanUtils.populate这个方法。想看一下官方文档怎么用的。下面是解决方案:在web app libreres下的commons-beanutils-1.8.0.jar上面右击有一个java doc location将下载好的doc文件jar包添加进去即可。图如:java doc文档的百度云下载地址:http://pan.baidu.com/s/1sj2fK原创 2014-02-17 10:39:26 · 1627 阅读 · 0 评论 -
java中final类的一些思考
在spring中,在final类上加上注解如:@Service("serviceName")则会报错。报错内容如下:Could not generate CGLIB subclass of class那么解决办法是:把类前面的final给去掉。但是这样又影响力之前的设计,怎么办呢?我选用了一个折中的办法,就是在该类的所有方法前加上final。到此问题解决。那么final类在项目中到底有什么原创 2014-02-28 12:00:58 · 1696 阅读 · 0 评论 -
神州租车java面试题-2016
今天整理相册,发现神州的面试题。就发上来让大家参考一下。个人觉得面试题不是很重要,主要是后面的面试官问题,而面试问题每个面试官都问的比较随机。不过大体都会问一下: 1,java并发包下的内容,hashmap的数据结构 2,虚拟机相关的 3,spring,mybaitis原理和常用类 4,数据库优化 5,并发和高流量方案下面是面试题的拍照: 第五题照的不原创 2016-07-11 18:34:07 · 4892 阅读 · 4 评论