JAVA
文章平均质量分 71
caomiao2006
这个作者很懒,什么都没留下…
展开
-
Java重载、覆盖、多态、隐藏的区别与联系
初次见到这两个单词并没有什么特别的感觉,但是时间长了,却发现书上一会儿用override,一会儿又用overload,搞得我的迷迷糊。于是就做了个总结,希望能对和我一样对这两个概念模糊不清的网友有一个帮助。 override 可以翻译为覆盖,从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。对我们来说最熟悉的覆盖就是对接口方法的实现,在接口中一般只是对方转载 2009-08-19 16:32:00 · 2428 阅读 · 0 评论 -
java中的枚举
Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口。 当我们在声明一个enum类型时,我们应该注意到enum类型有如下的一些特征。 1.它不能有public的构造函数,这样做可以保证客户代码没有办法新建一个enum的实例。 2.所有枚举值都是pub转载 2009-12-11 17:04:00 · 545 阅读 · 0 评论 -
java中try catch finally与return的执行顺序
测试1: public static int test1() { int i = 1; try { return ++i; } finally { ++i; Console.WriteLine("finally:" + i);转载 2009-12-29 23:56:00 · 2349 阅读 · 1 评论 -
c/c++通过socket发送结构体
c/c++通过socket发送结构可以直接先将结构转化到内存中,再通过send直接发送。 在网络通讯过程中往往涉及一些有关联的参数传递,例如数组,结构体之类的。对于结构体其实方法挺简单,由于结构体对象在内存中分配的空间都是连续的,所以可以将整个结构体直接转化成字符串发送,到了接收方再将这个字符串还原成结构体就大功告成了。 首先,我们建立一个结构体。 stru转载 2010-03-19 11:45:00 · 13292 阅读 · 2 评论 -
十进制加上前缀0变为八进制
<br /> 编程时,若在十进制数字前面加上前缀0,如052,则编译器把该数字视为八进制而不是十进制,就像0x50一样,所以像069这样的数字是不合法的,因为八进制不能含有8及其以上的数字。原创 2010-07-20 17:40:00 · 4746 阅读 · 0 评论 -
JAVA基础之理解JNI原理
JNI是JAVA标准平台中的一个重要功能,它弥补了JAVA的与平台无关这一重大优点的不足,在JAVA实现跨平台的同时,也能与其它语言(如C、C++)的动态库进行交互,给其它语言发挥优势的机会。有了JAVA标准平台的支持,使JNI模式更加易于实现和使用。在此总结了下面这个知识图:JNI(Java Native Interface)的书写步骤 ·编转载 2013-12-11 11:05:24 · 944 阅读 · 0 评论 -
FastJson---高性能JSON开发包
Fastjson介绍Fastjson是一个Java语言编写的JSON处理器,由阿里巴巴公司开发。1、遵循http://json.org标准,为其官方网站收录的参考实现之一。2、功能qiang打,支持JDK的各种类型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。3、无依赖,不需要例外额外的jar,能够直接跑在JDK上。4、开源,使用Ap转载 2013-12-12 20:42:45 · 3215 阅读 · 0 评论 -
Eclipse 常用快捷键
Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率。Eclipse中有如下一些和编辑相关的快捷键。 【ctrl+shift+L】可以看到所有的快捷键 1. 【ALT+/】 此快捷键为用户编辑的好帮手,能为用户提供内容的辅助,不要为记不全方法和属性名称犯愁,当记不全类、方法和属性的名字时,多体验一下【ALT+/】快捷键带来的好处吧。转载 2013-12-12 20:40:22 · 1049 阅读 · 0 评论 -
黑马程序员系列JAVA教程
http://blog.csdn.net/jiaoyun286/article/details/10859975转载 2013-12-22 19:14:06 · 1181 阅读 · 0 评论 -
Java注解的几大作用及使用方法详解(完)
java 注解的几大作用及使用方法详解(完)Posted on 2012-8-31, 16:19, by tmser, under java 总结.java 注解,从名字上看是注释,解释。但功能却不仅仅是注释那么简单。注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据),常见的作用有转载 2013-12-24 14:36:13 · 1375 阅读 · 0 评论 -
java applet 一个简单的例子(applet+html)
java applet是一个类,其层次结构如下图: 类 JApplet java.lang.Object java.awt.Component java.awt.Container java.awt.Panel java.applet.Applet javax.swing转载 2013-12-24 21:02:45 · 26781 阅读 · 0 评论 -
POJO JAVABEAN EJB的区别和联系
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规转载 2014-02-24 15:19:07 · 5489 阅读 · 1 评论 -
Spring的IoC DI和AOP理解
spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能 5.容器提供了众多的辅助类,能加快应用的开发 6.spring对于主流的应用框架提供了集成支持,如hibernate,JPA,Struts等转载 2014-02-24 16:07:22 · 7714 阅读 · 0 评论 -
什么是ClassLoader?
什么是ClassLoaderClassLoader是一个抽象类,我们用它的实例对象来装载类 ,它负责将 Java 字节码装载到 JVM 中 , 并使其成为 JVM 一部分。 JVM 的类动态装载技术能够在运行时刻动态地加载或者替换系统的某些功能模块,而不影响系统其他功能模块的正常运行。一般是通过类名读入一个class文件来装载这个类,(其它加载形式暂时没有研究过)。ClassLoa转载 2014-03-01 17:52:55 · 972 阅读 · 0 评论 -
Java 静态代理和动态代理
1. 代理模式主要有两种:静态代理和动态代理 2. 静态代理: 比如要在输出“HelloWorld”前打印一个字符串“Welcome” A:先定义一个接口类 Java代码 package ttitfly.proxy; public interface HelloWorld { public vo转载 2014-03-01 18:34:32 · 653 阅读 · 0 评论 -
ant 使用指南
一、概述ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。在实际软件开发中,有很多地方可以用到ant。 开发环境:System:WindowsJDK:1.6+IDE:eclipseant:1.9.1 Email:hoojo_@126.comBlog:http://blog.csdn.n转载 2014-03-11 11:02:37 · 847 阅读 · 0 评论 -
ant样例
内容摘要:ant是一个基于JAVA的自动化脚本引擎,脚本格式为XML。除了做JAVA编译相关任务外,ANT还可以通过插件实现很多应用的调用。ANT的基本概念:ANT的安装:解包,设置路径ANT的使用:最好的学习只不过是一个简单实用的例子起步……ANT的基本概念:Java的Makefile当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此转载 2014-03-11 16:27:01 · 634 阅读 · 0 评论 -
JAVA – 虚函数、抽象函数、抽象类、接口
1. Java虚函数虚函数的存在是为了多态。C++中普通成员函数加上virtual关键字就成为虚函数Java中其实没有虚函数的概念,它的普通函数就相当于C++的虚函数,动态绑定是Java的默认行为。如果Java中不希望某个函数具有虚函数特性,可以加上final关键字变成非虚函数PS: 其实C++和Java在虚函数的观点大同小异,异曲同工罢了。 2. Java抽象函数转载 2014-03-10 13:24:27 · 785 阅读 · 0 评论 -
Java中抽象类与接口的区别
二者的区别快忘得差不多了,从别处看到这文章感觉写的不错,正好复习复习,也给大家分享一下。抽象类 abstract class 包含抽象方法的类,叫抽象类。而抽象的概念就是抽象出共同属性:成员变量和方法。所以抽象类可以有private等多种权限的成员变量和非abstract的成员方法。当然抽象方法是一定要有的。 抽象类是用于单一继承的,不能实例化。而继承类转载 2014-03-10 13:29:52 · 601 阅读 · 0 评论 -
各个版本JDK官方下载地址
每次要找一个jdk的版本的时候, 总是在sun的官网转得晕头转向也找不到,其它网站的又不敢下,终于不知道在那里点到了archrive(档案库),记录下来,sun的各java产品的各个版本都全 http://java.sun.com/products/archive/转载 2014-03-19 13:33:03 · 19872 阅读 · 4 评论 -
JDBC事务控制管理
1、事务(1)事务的概念事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。例如:A——B转帐,对应于如下两条sql语句update account set money=money-100 where name=‘a’; update account set money=money+100 where name=‘b’;数据转载 2014-03-28 16:55:11 · 35148 阅读 · 1 评论 -
Java float精度计算的问题,截取小数点后两位
(一): float a = 123.2334f; float b = (float)(Math.round(a*100))/100;(这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000) (二): import java.text.DecimalFormat; String转载 2014-04-15 09:26:32 · 8093 阅读 · 0 评论 -
金额在数据库中的存储方法
1、decimal,以元为单位,精确到两位小数;2、原创 2014-04-15 09:25:29 · 8764 阅读 · 0 评论 -
浅谈BigDecimal类在电子商务中至关重要的地位
一提到Java里面的商业计算,我们都知道不能用float和double,因为他们无法进行精确计算。但是Java的设计者给编程人员提供了一个很有用的类BigDecimal,他可以完善float和double类无法进行精确计算的缺憾。BigDecimal类位于java.maths类包下。首先我们来看下如何构造一个BigDecimal对象。它的构造函数很多,我挑最常用的两个来演示一下:一个就是BigDe转载 2014-03-31 11:26:34 · 1334 阅读 · 0 评论 -
SSH和MVC的关系
SSH和MVC不能直接联系,对于B/S架构,Web层才存在MVC。 SSH 它就是一个架构 MVC 它是一种思想 程序从大方面分成三层:表示层、业务层、持久层;表示层也可以说是Web层,业 务层对应的是Service,持久层对应的是DAO。 Web层又分成MVC,Struts 属于Web层;Hibernate是持久层;实体对象(POJO)不 属于转载 2014-04-18 15:20:38 · 6953 阅读 · 1 评论 -
java.util.Date和java.sql.Date 一点区别
最近无意中发现,在oracle中同一样的一个Date类型字段,存储的日期格式有两种不同的情况,第一种是2011-1-1 12:00:00,第二种是2011-1-1,仔细查找发现在向数据库中写数据的时候定义的变量的问题。第一种是:java.util.Date类型的变量,第二种是:java.sql.Date类型的变量,后来写了下面的代码测试了下。java.util.Date和java.转载 2014-04-03 14:04:03 · 5089 阅读 · 0 评论 -
java.sql.date与java.util.date区别以及数据库中插入带时分秒的时间
java.sql.Date,java.sql.Time和java.sql.Timestamp三个都是java.util.Date的子类(包装类)。java.sql.Date是java.util.Date的子类,是一个包装了毫秒值的瘦包装器,允许 JDBC 将毫秒值标识为 SQL DATE 值。毫秒值表示自 1970 年 1 月 1 日 00:00:00 GMT 以来经过的毫秒数。 为了与转载 2014-04-03 14:24:06 · 1009 阅读 · 0 评论 -
log4j.properties log4j.xml 路径问题
自动加载配置文件:(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解。log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件。然后加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。转载 2014-03-25 14:48:00 · 37655 阅读 · 0 评论 -
关于JAVA项目中CLASSPATH路径详解
在dos下编译java程序,就要用到classpath这个概念,尤其是在没有设置环境变量的时候。classpath就是存放.class等编译后文件的路径。javac: 如果当前你要编译的java文件中引用了其它的类(比如说:继承),但该引用类的.class文件不在当前目录下,这种情况下就需要在javac命令后面 加上-classpath参数,通过使用以下三种类型的方法 来指导编译器在编译的转载 2014-03-25 17:40:54 · 837 阅读 · 0 评论 -
java中时间格式yyyyMMddHHmmss的大小写问题
字母 日期或时间元素表示示例GEra 标志符TextADy年Year1996 ; 96M年中的月份MonthJuly ; Jul ; 07w年中的周数Number27W月份中的周数Number2D年中的天数Number189d转载 2014-03-25 13:44:05 · 24503 阅读 · 0 评论 -
log4j.properties配置详解
Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。1. 配置文件Log4J配置文件的基本格式如下:#配置根Loggerlog4j.rootLogger = [ level ] , appenderName1 ,转载 2014-03-25 14:21:38 · 972 阅读 · 0 评论 -
关于java读取properties文件的路径问题
之前对于JAVA读取properties文件的路径一直模棱两可,晚上百度上查了一下资料然后自己做实验验证了一下,当前做一下记录,与写的不对的欢迎大家留言指正 当前实验工程的目录如上图所示,如果我们要读取的properties文件是放到classpath目录下(即放到src目录下,eclipse会将其自动编译到bin\目录下)这个是比较容易的看下面的代码: Java代码转载 2014-03-25 17:22:13 · 1624 阅读 · 0 评论 -
数字证书使用Javascript在浏览器中自动安装的解决方案
/2011年8月24日 22:20:20 by rush/ 如果在浏览器中使用ActiveX控件,你们控件有可能因为操作系统中对浏览器的安全设置而组织控件的安装。一种解决方案是调整浏览器的安全设置使其可以下载和运行未签名的和不安全ActiveX控件,但是这种方式带来的最大的缺点是降低了浏览器的安全性,造成了用户浏览器的潜在危险性,并且从易用性的角度讲要用户自己做这些设置,尤其是转载 2014-04-10 09:34:25 · 1946 阅读 · 1 评论 -
JAVA并发库之Executors常用的创建ExecutorService的几个方法说明
一、线程池的创建我们可以通过ThreadPoolExecutor来创建一个线程池。new ThreadPoolExecutor(corePoolSize, maximumPoolSize, keepAliveTime, milliseconds,runnableTaskQueue, handler);创建一个线程池需要输入几个参数:corePoolSize(线程池的转载 2014-05-14 10:01:06 · 856 阅读 · 0 评论 -
Powerdesigner15-用jdbc链接MySQL实现逆向工程步骤
Powerdesigner15-用jdbc链接MySQL实现逆向工程步骤 1.建立一个物理模型 2.配置一个jdbc数据库链接,以mysql为例 注意:使用 jdbc 连接数据库,要在环境变量设置 classpath ,值为数据库jdbc的 jar 文件路径 3.把物理模型的表更新到刚才配置的数据库(mysql)转载 2014-05-23 11:14:48 · 12998 阅读 · 0 评论 -
Java HashMap实现详解
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本转载 2014-08-18 17:27:08 · 491 阅读 · 0 评论 -
理解ThreadLocal
ThreadLocal是什么早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它转载 2014-08-10 22:45:33 · 892 阅读 · 0 评论 -
Java NIO与IO的区别和比较
导读J2SE1.4以上版本中发布了全新的I/O类库。本文将通过一些实例来简单介绍NIO库提供的一些新特性:非阻塞I/O,字符转换,缓冲以及通道。一. 介绍NIONIO包(java.nio.*)引入了四个关键的抽象数据类型,它们共同解决传统的I/O类中的一些问题。1. Buffer:它是包含数据且用于读写的线形表结构。其中还提供了一个特殊类用于内存映射文件的I/O操作。2.转载 2014-08-24 17:51:28 · 3324 阅读 · 0 评论 -
简单理解Hibernate三种状态的概念及互相转化
在Hibernate中有三种状态,对它的深入理解,才能更好的理解hibernate的运行机理,刚开始不太注意这些概念,后来发现它是重要的。对于理解hibernate,JVM和sql的关系有更好的理解。对于需要持久化的JAVA对象,在它的生命周期中有三种状态,而且互相转化。Hibernate三种状态之一:临时状态(Transient):用new创建的对象,它没有持久化,没有处于Session转载 2014-08-24 18:53:01 · 497 阅读 · 0 评论 -
线程安全问题举例
如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。或者说:一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题。线程安全问题都是由全局变量及静态变量引起的。若每个线转载 2014-09-08 11:10:12 · 1560 阅读 · 0 评论