摘要: 一、代理的概念 动态代理技术是整个java技术中最重要的一个技术,它是学习java框架的基础,不会动态代理技术,那么在学习Spring这些框架时是学不明白的。 动态代理技术就是用来产生一个对象的代理对象的。在开发中为什么需要为一个对象产生代理对象呢? 举一个现实生活中的例子:歌星或者明星都有一个自己 阅读全文
posted @ 2016-06-29 10:40 雨中飞鹭 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 一、体验泛型 JDK1.5之前的集合类中存在的问题——可以往集合中加入任意类型的对象,例如下面代码: JDK1.5之后的集合类希望你在定义集合时,明确表示你要向集合中装哪种类型的数据,无法加入指定类型之外的数据,例如下面的代码: 泛型是提供给Javac编译器看的,可以限定集合中的输入类型,让编译器挡 阅读全文
posted @ 2016-06-29 10:37 雨中飞鹭 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 一、认识注解 注解(Annotation)很重要,未来的开发模式都是基于注解的,JPA是基于注解的,Spring2.5以上都是基于注解的,Hibernate3.x以后也是基于注解的,现在的Struts2有一部分也是基于注解的了,注解是一种趋势,现在已经有不少的人开始用注解了,注解是JDK1.5之后才 阅读全文
posted @ 2016-06-29 10:35 雨中飞鹭 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 一、keytool的概念 keytool 是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。在JDK 1.4以后的版本中都包含了这一工具,它的位置为%JAVA_HOME%\bin\keytool 阅读全文
posted @ 2016-06-29 10:29 雨中飞鹭 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序列化,让它们 阅读全文
posted @ 2016-06-29 10:28 雨中飞鹭 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 一、接口的概念 JAVA是只支持单继承的,但现实之中存在多重继承这种现象,如“金丝猴是一种动物”,金丝猴从动物这个类继承,同时“金丝猴是一种值钱的东西”,金丝猴从“值钱的东西”这个类继承,同时“金丝猴是一种应该受到保护的东西”,金丝猴从“应该受到保护的东西”这个类继承。这样金丝猴可以同时从 “动物类 阅读全文
posted @ 2016-06-29 10:25 雨中飞鹭 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 一、抽象类介绍 下面通过一下的小程序深入理解抽象类 因此在类Animal里面只需要定义这个enjoy()方法就可以了,使用abstract关键字把enjoy()方法定义成一个抽象方法,定义如下:public abstract void enjoy(); 从某种意义上来说,抽象方法就是被用来重写的,所 阅读全文
posted @ 2016-06-29 10:24 雨中飞鹭 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 一、对象转型介绍 对象转型分为两种:一种叫向上转型(父类对象的引用或者叫基类对象的引用指向子类对象,这就是向上转型),另一种叫向下转型。转型的意思是:如把float类型转成int类型,把double类型转成float类型,把long类型转成int类型,这些都叫转型。把一种形式转成另外一种形式就叫转型 阅读全文
posted @ 2016-06-29 10:22 雨中飞鹭 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 一、面向对象最核心的机制——动态绑定,也叫多态 1.1.通过下面的例子理解动态绑定,即多态 运行结果: 1.2.画内存图理解动态绑定(多态) 首先从main方法的第一句话开始分析: Cat c = new Cat("Catname","blue"); 程序执行到这里,栈空间里有一个变量c,c里面装着 阅读全文
posted @ 2016-06-29 10:20 雨中飞鹭 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 一.JAVA类的定义 JAVA里面有class关键字定义一个类,后面加上自定义的类名即可。如这里定义的person类,使用class person定义了一个person类,然后在person这个类的类体里面定义person这个类应该具有的成员变量(即属性)和方法,如这里定义的int id和int a 阅读全文
posted @ 2016-06-29 10:17 雨中飞鹭 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 一、java读取properties文件总结 在java项目中,操作properties文件是经常要做的,因为很多的配置信息都会写在properties文件中,这里主要是总结使用getResourceAsStream方法和InputStream流去读取properties文件,使用getResour 阅读全文
posted @ 2016-06-29 10:16 雨中飞鹭 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 一、super关键字 在JAVA类中使用super来引用父类的成分,用this来引用当前对象,如果一个类从另外一个类继承,我们new这个子类的实例对象的时候,这个子类对象里面会有一个父类对象。怎么去引用里面的父类对象呢?使用super来引用,this指的是当前对象的引用,super是当前对象里面的父 阅读全文
posted @ 2016-06-29 10:12 雨中飞鹭 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 一、this关键字 this是一个引用,它指向自身的这个对象。 看内存分析图: 假设我们在堆内存new了一个对象,在这个对象里面你想象着他有一个引用this,this指向这个对象自己,所以这就是this,这个new出来的对象名字是什么,我们不知道,不知道也没关系,因为这并不影响这个对象在内存里面的存 阅读全文
posted @ 2016-06-29 10:10 雨中飞鹭 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 一、Object类介绍 Object类在JAVA里面是一个比较特殊的类,JAVA只支持单继承,子类只能从一个父类来继承,如果父类又是从另外一个父类继承过来,那他也只能有一个父类,父类再有父类,那也只能有一个,JAVA为了组织这个类组织得比较方便,它提供了一个最根上的类,相当于所有的类都是从这个类继承 阅读全文
posted @ 2016-06-29 10:09 雨中飞鹭 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 一、equals方法介绍 1.1.通过下面的例子掌握equals的用法 1.2.画出内存分析图分析c1和c2比较的结果 程序: Cat c1 = new Cat(1,1,1); Cat c2 = new Cat(1,1,1); 执行完之后内存之中的布局如下图所示, c1指向一个对象,c2也指向一个对 阅读全文
posted @ 2016-06-29 10:07 雨中飞鹭 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 现在是站在JAVA虚拟机的角度来看内存里面的布局,站在JAVA虚拟机的角度,在内存里面有好多好多个对象,这里用椭圆来代表一个个对象。一个程序运行起来的时候,可能会有很多个对象在内存里面分配,那么对于JAVA虚拟机来说,它运行的时候需要找到这些对象的地址,这些对象的地址怎么找呢?JAVA虚拟机会用一张 阅读全文
posted @ 2016-06-29 09:55 雨中飞鹭 阅读(216) 评论(0) 推荐(0) 编辑