java
初级以上
开始觉悟,得认真学习。
展开
-
Java中多态的粗浅见解
面向对象有三大特性:封装、继承、多态。 本文简单谈一下对多态的粗浅理解。实现多态的技术称为动态绑定,是指在执行期间,根据引用对象的实际类型,调用相应的方法。也是就说,多态是运行期的行为,不是编译期的行为。 多态存在的3个必要性: 1、要有继承;Child继承Parent类; 2、要有重写;Child类中存在与Parent类同名同参数的原创 2016-03-02 10:58:57 · 792 阅读 · 0 评论 -
java使用DateUtils对日期进行数学运算
最近在写数据上传的程序,需要对Date进行一些数学运算,个人感觉在java中,日期的数学运算还是比较常用的,所以把Date的数学运算都玩了一下。试了一下,发现DateUtils这个工具类对于Date的数学运算非常方便,见代码吧。public class DateCalculate { /** * 日期格式的运算 * @param args */ public static v原创 2016-08-19 10:44:08 · 14318 阅读 · 2 评论 -
Ubuntu 下安装Git时遇到的问题 - You might want to run 'apt-get -f install' to correct these
在Ubuntu下通过apt-get安装Git时,报出的问题:# apt-get install gitReading package lists... DoneBuilding dependency tree Reading state information... DoneYou might want to run 'apt-get -f install' to corr原创 2016-08-30 11:04:39 · 4446 阅读 · 0 评论 -
fastJson json字符串转List以及Map
fastJson是阿里出品的json处理插件,比较轻量、易用,国内很多公司都应用于生产系统中。一般的Web应用程序为了更好的用户体验,在页面中使用了ajax技术,异步加载数据,或者提交数据。在Web前端与服务器端之间的数据传输格式大多使用json格式,那么在应用程序开发过程中,处理json也就变成一种基本的开发技术。 常见的json处理梳理: 1、解析Web前端请求发送原创 2016-10-21 08:58:53 · 9158 阅读 · 0 评论 -
Java中transient的使用说明
Java中的transient关键字,从字面意义理解,transient为短暂的意思,transient应用于class的field上,即说明该field为短暂的,那对于1个成员变量,短暂的成员变量意味着什么?transient 修饰的变量,在类实例的序列化处理过程中会被忽略,例如,将类的实例序列化成字节流,再从字节流反序列化成类实例,transient修改的变量将不是原来的值,因此,短暂的成员变量意味着,不会贯穿对象的序列化和反序列化,只会存在当前,是短暂的存在而非持久的存在。原创 2016-12-22 08:36:21 · 3598 阅读 · 0 评论 -
使用exe4j打包jar为exe,运行闪退,无法看到错误信息
使用exe4j集成jre打包exe时,运行exe应用程序时,直接闪退,经排查,发现报错信息:The JAVA_HOME environment variable does notpoint to a working 32-bit JDK or JRE.The JVM found at JAVA_HOME is damaged.Please reinstall or define EXE4J_JAVA_HOMEto point to an installed 32-bit JDK or JRE.T原创 2016-12-28 17:26:02 · 9692 阅读 · 3 评论 -
Java - 概念 - Java反射
java反射 应用程序编译时期,并不知道某个.class文件的存在,那么,在编程的时候就无法知道这个类有哪些方法、属性、构造方法。实例化未知类的对象obj,通过传统的编码方式——通过obj.属性或obj.方法来访问对象属性或方法,是做不到的。反射提供一种机制,在应用程序运行期,加载.class文件,然后使用相关的反射机制来检查类可用的方法、属性、构造方法。什么时候使用反射 假如你想获取某个原创 2017-04-11 17:56:24 · 419 阅读 · 0 评论 -
java - 实战 - 在接口中定义方法的实现
接口常用于功能的解耦,接口通过interface定义。在Interface中定义方法,但是不需要实现方法。接口的作用是规范接口实现具备的功能,似于是类的模板。例如Map<K,V>接口,规范了所有Map实现都需具备的功:size(),isEmpty()等方法。原创 2017-05-01 13:11:09 · 3079 阅读 · 0 评论 -
Linux 安装Gradle
环境说明Ubuntu14.0.4 已安装配置好Java 1.8(要求是Java1.7及以上版本)下载安装包并解压 gradle-3.5-bin.zip$ unzip gradle-3.5-bin.zip配置环境变量 配置系统环境变量 /etc/profileexport PATH=$PATH:/opt/gradle/gradle-3.5/bin验证安装$ gradle -v原创 2017-04-16 17:55:54 · 1610 阅读 · 0 评论 -
java - 实战 - 导入的java项目不能运行main方法类
在网上下载的java项目,通过IDE(Eclipse或STS)import项目后,发现导入的工程只有src目录,没有 JRE System Library,包。打开带有main方法的类,右击run as,并没有看见Java Application。当使用run as -> AspectJ/Java Application 运行时,会报错://弹出的报错窗口信息:editor does not co原创 2017-05-19 16:49:16 · 8218 阅读 · 1 评论 -
实战 - Java程序最后的清道夫Runtime.addShutdowHook
做一个爱护环境,热爱资源的程序员,在使用应用程序后,记录及时释放资源,在阅读LTS源码时,发现了Runtime.addShutdownHook()的用法,稍微记录一下。使用该方法可以给当前JVM注册一个关闭挂勾线程,在程序退出时,会执行这个关闭挂勾线程,而这个时间点,最适合进行资源的释放工作。以下直接看实例代码:/* * JVM虚拟器关闭挂勾:在JVM关闭时,触发执行:一般用于资源释放。 * 在原创 2017-06-30 09:39:26 · 537 阅读 · 0 评论 -
Java中Date日期格式的各种转换
根据网上材料进行归纳梳理,对常见的日期格式进行转换,直接上代码吧。import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class DateParserT { /** * Date 与转载 2016-07-22 10:03:00 · 46562 阅读 · 5 评论 -
在java项目中使用Log4j -2-Logger
Logger是log4j操作的核心对象,Logger的Name是区分大小写的,而且支持层级命名规则,类似于Java类的定义,通过命名空间来区别。翻译 2016-08-16 17:20:12 · 1734 阅读 · 0 评论 -
linux shell java jar 使用依赖包时classpath的设置问题
在linux下通过命令行或shell脚本执行jar包时,如果该jar包没有引用外部jar包,则非常容易,只需使用如下命令就可以实现:java -jar Test.jar #注意,如果在打包jar文件时,没有指定Main入口所在的类,则需要在后面加上类的命名,如com.test.HelloWord但是实际应用或者生产环境,根本不可能有如果容易的需求,那如果该jar需要引用外部jar包,那又当原创 2016-07-08 14:29:32 · 10039 阅读 · 0 评论 -
java中抽象类的粗浅理解
抽象类的出现,在于建立一种约定的机制。约定的机制通过抽象方法来实现,由实现子类进行方法的实现。说白了就是对一组对象(类)进行高层级的抽象,形成一个高层级抽象类,通过这个高层级的抽象类,来约定这组对象的行为。原创 2016-03-02 12:22:22 · 845 阅读 · 0 评论 -
Java中接口的粗浅理解
用interface来声明一个接口,interface的地位相当于class,声明时把class替换成interface就可以。 接口不能进行实例化,就是说不能通过new操作,但却可以声明接口变量,接口变量必须指定实现了接口的类。 接口方法: 接口中的所有方法都是抽象方法(不需要实现),一般情况下缺省abstract。 接口方法缺省访问控原创 2016-03-02 14:05:42 · 624 阅读 · 0 评论 -
java程序运行机制的简单梳理
根据圣骑士大牛的博文进行简单的梳理,更详细的内容在:http://www.cnblogs.com/mengdd/p/3561867.html一、JVM的生命周期介绍: 当启动一个java程序时,一个JVM实例就诞生;当这个java程序关闭时,则这个JVM实例就随着消亡。可以理解为,JVM的生命周期就是java程序的执行过程。如果一台机器上同时运行多个java程序,将转载 2016-03-02 17:53:38 · 962 阅读 · 0 评论 -
JVM 参数介绍
参数开关:参数默认值或限制说明参数默认值功能-XX:-AllowUserSignalHandlers限于Linux和Solaris,默认不启用允许为java进程安装信号处理器,信号处理参见类:sun.misc.Signal, sun.misc.SignalHandler-XX:+Di转载 2016-03-12 14:45:33 · 442 阅读 · 0 评论 -
不使用Maven的情况下,搭建Spring+Struts+Hibernate框架 - jar包与配置文件
Spring+Struts+Hibernate被简称为SSH,是Java EE开发中比较流行的开发框架组合,很够方便快速的让你开发出你想要的网站。Spring负责解耦,主要是通过控制反转来实现。Struts负责受理Web前端请求,主要Action来实现。Hiernate负责数据库对象映射,持久化数据。 这三套如果通过maven来搭建那会比较容易,在不通过maven,则会比较繁琐,本文介原创 2016-04-17 10:46:57 · 1425 阅读 · 0 评论 -
不使用Maven的情况下,搭建Spring+Struts+Hibernate框架 - 项目搭建
继上一篇文章:《不使用Maven的情况下,搭建Spring+Struts+Hibernate框架 - jar包与配置文件》已经介绍了SSH所涉及到的Jar包和配置文件,本章将记录在Web项目中搭建SSH的过程。项目搭建新建Web项目使用MyEclipse开发Web项目;New Web Project (java EE 5.0);搭建spring框架1)、在项目中原创 2016-04-18 21:57:33 · 1262 阅读 · 0 评论 -
java集合 - Collection - List - Set - Map - Iterator 学习笔记
1、Collection接口集合可以理解为一个动态的对象数组,两层含义:1)、动态:集合中的对象可以任意扩充和删减;2)、集合中可以存放任意对象。集合的性能比数组高,而且更容易进行数据的扩展和修改。Collection的常用子接口:List、Set、Queue。2、List接口List集合可以存放任意对象,而且集合中对象可以重复。List的常用实现类:A原创 2016-05-08 12:30:39 · 1149 阅读 · 0 评论 -
eclipse调试技巧之使用各种视图跟踪数据变化
程序员每天都在debug,debug技能是程序员必修的功能,一个好的IDE工具,都会携带有满足我们调试使用的插件,eclipse是个不错的选择,其携带的工具都是插件式的,本次主介绍eclipse中对debug非常有用的视图。 一、设置断点 只需要在标志行的位置点击1下,就可以成功设置断点了,关于断点是什么,不做过多的说明。 二、启动调试原创 2016-07-24 23:16:15 · 5293 阅读 · 1 评论 -
一台电脑上存多个Java版本时,多个Tomcat启动窗口闪退而服务没有启动的情况
本来电脑上已安装了java1.6版本,并配置好了JAVA_HOME等环境变量。但是在cmd下面查看java -version时居然是java 1.8。我想可能是该电脑上被人装了个oracle11g,自带安装了java1.8。 由于测试需要,我自己需要在这电脑上搭多1个tomcat,原本电脑上就已经有1个tomcat在运行了,这时要部署多一个tomcat就要注意了。如果不加配置,这原创 2016-07-14 09:25:22 · 1384 阅读 · 0 评论 -
在java项目中使用Log4j -1- 概述
一、概述 Log4j是一套非常轻量级的日志框架,主要是以运行效率高,占用资源少,简单易用而著称,从而得到很多开发人员的喜爱,被广泛的应用各种领域的项目中。 Log4j主要是通过外部配置文件,对相关的日志操作设置进行配置,而实现了在运行时完全可配置的日志功能。主要意思就是,如果你在项目编码完成后,想调整一些日志操作的方式(比如:开发阶段,你可以需要看到DEBUG的信息原创 2016-07-28 13:48:32 · 619 阅读 · 0 评论 -
java - io - RandomAccessFile 源码走读
RandomAccessFile 用于随机访问文件,这里的随机是指可以自动由移动读取文件内容的指针/位置(position),实现可进可退,可跳跃的访问文件内容。不像流,只能向前读写。另外 RandomAccessFile 即支持读操作,也支持读操作。RandomAccessFile 有多种访问文件的模式(mode )原创 2017-12-12 23:32:24 · 715 阅读 · 0 评论