自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

蜗牛虽慢,但始终坚持不懈

蜗牛—成功总是垂青于有心人。

  • 博客(45)
  • 收藏
  • 关注

转载 文件流-1

对于程序语言的设计者来说,创建一个好的输入输出系统是一个艰巨的任务File类File类这个名字有一定的误导性,我们可能会认为它指代的是文件,然而却并非如此,它既能表明一个文件特定的名称,又能代表一个目录下一组文件的名称,如果他指的是文件集,我们就可以对此集合调用list方法,会返回一个字符数组,也及时目录列表 假设我们想查看一个目录列表,可以用两种方法来使用F...

2019-03-07 21:04:00 258

转载 类型信息

运行时类型信息使得你可以在程序运行时发现和使用类型信息使得你从只能在编译期执行面向类型的操作的禁锢中解脱出来,并且可以使用某些强大的程序RTTIRRTI:通过运行时类型信息程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型。Class对象要理解RTTI在Java中的工作原理,首先必须知道类型信息在运行时是如何表示的。这项工作是由称为C...

2019-02-09 00:20:00 252

转载 字符串

不可变StringString对象是不可变的,查看JDK文档你会发现,String类中每一个看似会修改String值得方法,都是创建一个全新的String对象,以包含修改后的字符串内容,而最初的String对象丝毫未变转载于:https://www.cnblogs.com/QianYue111/p/10352383.html...

2019-02-04 23:33:00 185

转载 通过异常处理错误-2

Java标准异常Throwable这个Java类被用来表示任何可以作为异常被抛出的类。Throwable对象可分为两种类型(指从Throwable继承而得到的类型):Error用来表示编译时和系统错误(除特殊情况外,一般不用你关心);Exception是可以被抛出的基本类型,在Java类库、用户方法以及运行时故障中都可能拋出Exception型异常。所以Java...

2019-02-02 22:34:00 242

转载 通过异常处理错误-1

Java的基本理念是“ 结构不佳的代码不能运行”。 发现错误的理想时机是在编译阶段,也就是在你试图运行程序之前。然而,编译期间并不能找出所有的错误,余下的问题必须在运行期间解决。这就需要错误源能通过某种方式,把适当的信息传递给某个接收者一该接收者将知道如何正确处理这个问题。 改进的错误恢复机制是提供代码健壮性的最强有力的方式。错误恢复在我们所编写的...

2019-01-14 20:12:00 261

转载 线程池

Java 线程池相关问题问题一:Java 中的线程池是如何实现的?在 Java 中,所谓的线程池中的“线程”,其实是被抽象为了一个静态内部类 Worker,它基于 AQS 实现,存放在线程池的HashSet<Worker> workers成员变量中;而需要执行的任务则存放在成员变量 workQueue(BlockingQueue<Runn...

2019-01-10 19:06:00 192

转载 Synchronized

Synchronized 相关问题Synchronized ,其原理是什么?Synchronized 是由 JVM 实现的一种实现互斥同步的一种方式,如果你查看被 Synchronized 修饰过的程序块编译后的字节码,会发现,被 Synchronized 修饰过的程序块,在编译前后被编译器生成了monitorenter和monitorexit两个字节码指令这两个指令...

2019-01-10 10:57:00 553

转载 持有对象-4

SetSet不保存重复的元素(至于如何判断元素相同则较为复杂,稍后便会看到)。如果你试图将相同对象的多个实例添加到Set中,那么它就会阻止这种重复现象。Set中 最常被使用的是测试归属性,你可以很容易地询问某个对象是否在某个Set中。正因如此,查找就成为了Set中最重要的操作,因此你通常都会选择一个HashSet的实现, 它专门对快速查找进行了优化。 Set具有与Col...

2019-01-10 00:04:00 187

转载 持有对象-3

LinkedListLinkedList也像ArrayList一样实现了基本的List接口,但是它执行某些操作(在List的中 间插入和移除)时比ArrayList更高效,但在随机访问操作方面却要逊色些。LinkedList还添加了可以使其用作栈、队列或双端队列的方法。这些方法中有些彼此之间只是名称有些差异,或者只存在些许差异,以使得这些名字在特定用法的上下文环境中更加适用(...

2019-01-09 16:20:00 136

转载 持有对象-2 迭代器深入理解

概述任何容器类,都必须有某种方式可以插入元素并将它们再次取回。毕竟,持有事物是容器最基本的工作。对于List, add0是插入元素的方法之- ,而get0是取出元素的方法之-。 如果从更高层的角度思考,会发现这里有个缺点:要使用容器,必须对容器的确切类型编程。初看起来这没什么不好,但是考虑下面的情况:如果原本是对着List编码的,但是后来发现如果能够把相同的代码应用于S...

2019-01-07 23:51:00 160

转载 ServletContextListener

在Servlet API中有一个ServletContextListener接口,它能够监听ServletContext对象的生命周期,实际上就是监听Web应用的生命周期。  当Servlet容器启动或终止Web应用时,会触发ServletContextEvent事件,该事件由ServletContextListener来处理。在ServletContext...

2019-01-03 21:51:00 150

转载 持有对象-1

泛型和类型安全的容器ArrayList可以当做刻意扩展自身尺寸的数组不用泛型的话,ArrayList可以用add方法添加不同的对象,也可以用get方法取出对象,但是对象类型是Object,你需要向下转型。在运行时如果你试图将得到的对象转型为不同的类型时,比如将A对象转换为B,就会有运行时异常使用Java泛型来创建类会非常复杂。但是,应用预定义的泛型通常会很简单。例如,要想定义...

2019-01-03 21:50:00 142

转载 行为参数化

1,行为参数化,就是一个方法接受多个不同的行为作为参数,并在内部使用它们,完成不 同行为的能力2,行为参数化可让代码更好地适应不断变化的要求,减轻未来的工作量。3,传递代码,就是将新行为作为参数传递给方法。但在Java 8之前这实现起来很啰嗦。为接 口声明许多只用一次的实体类而造成的啰嗦代码,在Java 8之前可以用匿名类来减少。 4,Java API包含很多可以用不同行为...

2019-01-02 18:24:00 192

转载 Spring之Bean管理------注解方式

编写测试类1,编写相关的类public interface UserDao {public void sayHello();}public class UserDaoImpl implements UserDao {@Overridepublic void sayHello() {System.out.println("Hello Spring..."...

2019-01-02 18:23:00 193

转载 内部类3

内部类的继承因为内部类的构造器必须连接到指向其外围类对象的引用,所以在继承内部类的时候,事情会变得有点复杂。问题在于,那个指向外围类对象的“秘密的”引用必须被初始化,而在导出类中不再存在可连接的默认对象。要解决这个问题,必须使用特殊的语法来明确说清它们之间的关联:class WithInner{ class Inner { }}...

2019-01-02 18:18:00 131

转载 内部类2——为什么需要内部类?

一,为什么需要内部类?一般说来,内部类继承自某个类或实现某个接口,内部类的代码操作创建它的外围类的对象。所以可以认为内部类提供了某种进人其外围类的窗口。内部类必须要回答的一个问题是:如果只是需要一个对接口的引用,为什么不通过外围类实现那个接口呢?答案是:“如果这能满足需求,那么就应该这样做。”那么内部类实现一个接口与外围类实现这个接口有什么区别呢?答案是:后者不是总能享用接...

2019-01-02 17:21:00 145

转载 内部类-1

当一个外围类创建一个内部类对象是时,此内部类对象必定会秘密不活一个指向那个外围类对象的引用内部类自动拥有对其外部类成员的访问权内部类的对象只有与外围类对象有关联的时候,才能被创建。构建内部类对象时,须要一个指向外围类对象的引用,不过大多数时候,都无需程序员担心静态内部类可以不通过外部类引用来建立内部类 InterClass.outer c=new InterClass.o...

2018-12-31 23:42:00 127

转载 接口

如果从一个抽象类继承,并想创建该新类的对象,那么就必须为新类中的所有抽象方法提供方法定义,如果不这样做,那么导出类也是抽象类,且编译器会强制我们用abstract关键字来限定这个类;在抽象类中的抽象方法没有方法体接口中的方法都是抽象的,没有方法体接口被用来建立类与类之间的协议interface不仅仅是一个极度抽象的类,因为它允许人们创建一个能够被向上转型为多种基类的类型,来实...

2018-12-29 20:33:00 116

转载 多态

绑定就是将一个方法调用同一个方法主体关联起来。如果在执行前绑定就是前期绑定,在运行时根据对象的类型进行绑定;在Java中除了static和final方法之外,其他方法都是后期绑定,private也属于final方法,所以在通常情况下,我们不必要考虑是否应该进行后期绑定,因为它会自动发生不要试图使用final来提高性能Java的多态是通过动态绑定也就是后期绑定来实现的,那么我们...

2018-12-28 21:02:00 123

转载 访问权限控制

一,包,库单元1,代码组织Java可运行程序是一组可以打包并压缩的Java文档文件的.class文件。Java解释器负责这些文件的查找,装载和解释类库实际上是一组类文件,期中每一个文件都有一个public类,以及任意数量的非public类,因此每一个文件都有一个构件,如果希望这些构件从属于一个群组,就可以使用关键字package。身为名类库设计员, 很有必要牢记: pac...

2018-12-27 22:29:00 147

转载 Java线程细节

启动一个线程是用 run() 还是 start()?启动一个线程是调用 start()方法,启动线程并调用 run 方法线程的基本概念、线程的基本状态以及状态之间的关系线程是进程内的并发,没有自已内存空间,是共享进程的,线程间的通信成本较低。Java 中的线程有四种状态分别是:运行、就绪、挂起、结束多线程有几种实现方法, 都是什么? 同步有几种实现方法 , 都是什么 ? 用什...

2018-12-27 22:19:00 121

转载 复用类即多态性的体现

一,继承语法1,成员默认的访问权限是包,包内其他类都可以访问;而继承其他的类只能访问public成员;为了继承,一般性规则是,把数据成员变量设置为private,使之不能被访问2,继承的方法被覆盖之后不能在本方法直接被调用,否则会产生递归,这不是我们期望看到的结果,一般情况下会使用super调用基类版本的方法3,在继承过程中,不一定非要使用基类的方法,也可以添加新的方法和变量...

2018-12-27 19:26:00 334

转载 assertion的用法

一、assertion的语法和语义 在软件开发中,assertion是一种经典的调试、测试方式,本文将深入解析assertion功能的使用以及其设计理念,并给出相关的例子。 清软国际java学习 assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制,如C,C++和Eiffel等,但是支持的形式不尽相同,有的是通过语言本身、有的是...

2018-12-23 21:50:00 1051

转载 初始化与清理

初始化与清理正是涉及安全的两个问题Java引入了构造器地概念,这是一个在创建对象时自动被调用的特殊方法,Java提供了垃圾回收器,。对于不再使用的内存资源,垃圾回收能自动将其释放。一,用构造器确保初始化在Java中,通过提供构造器,类的创建者能确保没个对象能够被初始化。创建对象时,如果其类具有构造器,Java会在用户有能力调用对象之前调用响应的构造器,从而保证了初始化的进行。...

2018-12-20 21:59:00 127

转载 AOP

一,AOP概念AOP是Aspect-OrientedProgramming(面向方面编程或面向切面)的简称,维基百科对它的解释如下。维基百科对“AOP” 相关概念的叙述Aspect是一-种新的模块化机制,用来描述分散在对象、类或函数中的横切关注点(crosscutting concern)。 从关注点中分离出横切关注点是面向切面的程序...

2018-12-15 21:27:00 166

转载 cglib动态代理

前言jdk中的动态代理通过反射类Proxy和InvocationHandler回调接口实现,要求委托类必须实现一个接口,只能对该类接口中定义的方法实现代理,这在实际编程中有一定的局限性。cglib实现使用cglib[Code Generation Library]实现动态代理,并不要求委托类必须实现接口,底层采用asm字节码生成框架生成代理类的字节码,下面通过一个例子看看使用...

2018-12-15 20:49:00 166

转载 代理模式与AOP

代理模式代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。简单的说就是,我们在访问实际对象时,是通过代理对象来访...

2018-12-07 22:25:00 145

转载 IOC容器

一,IOC容器和依赖反转模式在这里,我们先简要地讨论依赖反转的相关概念。我们选取维基百科中关于体赖反转的叙述,把这些文字作为我们理解依赖反转这个概念的参考。这里不会对这些原理进行学理.上的考究,只是希望提供-些有用的信息,以便给读者一些自示。这个模式非常重要,它是IoC容器得到广泛应用的基础。 维基百科对“依赖反转”相关概念的叙述 平在...

2018-12-05 22:57:00 155

转载 Spring的jsp标签库

1,主要有两个一个用于渲染HTML表单标签, 这些标签会绑定model中的某个属性另一个包换了一些工具类标签2,将表单绑定到模型上包含了14个标签,海报一个人为用户展现错误的标签,它会将错误信息渲染到最终的HTML中为了使用表单绑定库,需要在jsp页面中声明:<%@ taglib uri="http://www.springframework.org/tag...

2018-11-20 15:49:00 222

转载 JavaWeb之上传与下载

文件上传概述:1,文件上传对页面的要求:必须使用表单,而不能是超链接表单的method必须是post表单的enctype必须是multipart/form-data在表单中添加file表单字段,即<input type=”file”…/>比如: <form action="${pageContext.request.contextPath }...

2018-10-23 23:23:00 100

转载 Json

Json概述JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率JSON是用字符串来表示Javascript对象,例如可以在Servlet中发送一个JSON...

2018-10-21 22:59:00 117

转载 XStream详解

XStream的作用XStream可以把JavaBean对象转换成XML!通常服务器向客户端响应的数据都是来自数据库的一组对象,而我们不能直接把对象响应给客户端,所以我们需要把对象转换成XML再响应给客户端,这时就需要使用XStream组合了XStream相关JAR包我们可以到http://xstream.codehaus.org/地址去下载XStream安装包!XS...

2018-10-19 20:13:00 1338

转载 AJAX异步交互

什么是AJAXAJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML)。AJAX还有一个最大的特点就是,当服务器响应时,不用刷新整个浏览器页面,而是可以局部刷新。这一特点给用户的感受是在不知不觉中完...

2018-10-18 22:47:00 195

转载 Struts初学

自我概述今天看了Struts,感觉这是个非常好用的东西!虽然它已经过时了,被springMVC取代了,但是仍然有了解的价值。可是在学习过程中遇到了很多问题,比如其中一些原理很是抽象,有一些问题莫名其妙;也许是我基础薄弱,让我有一些沮丧和低迷,让我坚定了把学习的重心放在Why,而不是How!希望所有志同道合的博友们,明我之心,这样才能在IT行业走的更远!无论如何,还是要在这么晚...

2018-10-11 23:57:00 161

转载 Hibernate一级缓存

缓存:缓存介于应用程序和永久性数据存储源之间,其作用是降低应用程序直接读写永久性数据存储源的概率,从而提高应用程序的运行性能,缓存的物理介质通常是内存一级缓存hibernate的缓存分为一级和二级缓存,两者都位于持久化层存储的都是数据库数据的备份,其中一级缓存为hibernate的内置缓存,不能卸载hibernate的一级缓存就是指session缓存,sess...

2018-10-06 17:24:00 183

转载 持久化类的三种状态

瞬时态是由new命令创建,开辟内存空间的对象,不存在持久化标识,也就是主键oid,尚未与session相连接,在数据库中也没有记录,近视一个携带信息的载体持久态持久态的对象存在持久化标识oid,加入到session缓存中,并且相关联的session也没有关闭,在数据库中有对应额记录,每一条记录对影一个持久化对象,值得注意的是,持久态是事务没有提交之前变成的托管态某个持...

2018-10-06 16:58:00 165

转载 Hibernate持久化类规则

注意事项:提供无参的构造方法,因为在hibernate需要使用反射生成类的实例提供私有属性,并对这些属性提供公共的setting和getting方法,因为在hibernate底层会将查询到的数据进行封装尽量使用封装类,因为包装类和基本数据类型的默认值不一样,包装类的类型语义更加清晰,而基本数据类型不容易描述提供唯一一个oid,与数据库表的主键对应:因为hibernate需...

2018-10-05 22:31:00 166

转载 JSP之Bean

<jsp:useBean id=" " class" "/>创建JavaBean对象,并把创建的对象保存到域对象比如:<jsp:useBean id="user1" class="cn.itcast.domain.User" />上面代码表示在当前JSP页面中创建User类型的对象,并且把它保存到page域中了。下面我们把<jsp:useBean&g...

2018-10-05 18:23:00 710

转载 JSP动作标签

概述:用来简化Java脚本jsp动作标签是JavaWeb内置的动作标签,是已经定义好的,我们可以拿来直接使用如果不够用,可以自定义JavaWeb一共提供了20多个标签,但是大多数基本没用,这里只讲常用的几个动作标签<jsp:include page=" ">请求包含这个和jsp中include指令相似,但include是在编译时完成的包...

2018-10-05 18:01:00 137

转载 JSP九大内置对象

在JSP中无需创建就可以使用的9个对象,它们是:out(JspWriter):等同与response.getWriter(),用来向客户端发送文本数据;config(ServletConfig):对应“真身”中的ServletConfig;page(当前JSP的真身类型):当前JSP页面的“this”,即当前对象;pageContext(PageContext):页面上下...

2018-10-05 17:41:00 97

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除