
java基础知识
文章平均质量分 83
iteye_3312
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JNI
java中的native关键字 JNI是Java Native Interface的 缩写。从Java 1.1开始,Java Native Interface (JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计 的,但是它并不妨碍你使用其他语言,只要调用约定受支持就可以了。 使用jav...原创 2013-09-08 21:48:03 · 88 阅读 · 0 评论 -
Java细节之static方法重写
前言 Java语言拾遗,高手如果感兴趣可跳过前两节。 类方法 方法被声明为static后,则称为类方法。类方法相对于实例方法,前者区别于后者的地方:前者为属于该类的所有实例对象共享,无须实例化对象,仅通过类名即可访问(当然,是否能够直接访问,还取决于所声明的访问权限)。 因为被static化后产生上述特殊性,所以static变量都会在类被加载时初始化,而类方法也同时随类加载而进驻内存。先来...原创 2013-09-22 15:21:15 · 167 阅读 · 0 评论 -
方法重写与重载的的区别
首先我们来讲讲:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。 重载Overloading是一个类中多态性的一种表现。 (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。 调用方法时通过传递给它们的不同参数个数和参数类...原创 2013-09-22 14:51:44 · 104 阅读 · 0 评论 -
重写自己的hashCode()方法
大家都知道,在Java里对对象的操作是基于引用的。而当我们需要对一组对象操作的时候, 就需要有接收这一组引用的容器。平时我们最常用的就是数组。在Java里可以定义一个对象数组来完成许多操作。可是,数组长度是固定的,如果我们需要更加灵活的解决方案该怎么办呢? Java提供了container classes来解决这一问题。container classes包括两个部分:Collectio...原创 2013-09-18 22:40:03 · 215 阅读 · 0 评论 -
Tomcat源码分析(休息处理)
0:前言 我们知道了tomcat的整体框架了, 也明白了里面都有些什么组件, 以及各个组件是干什么用的了。 http://www.youkuaiyun.com/Develop/read_article.asp?id=27225 我想,接下来我们应该去了解一下 tomcat 是如何处理jsp和servlet请求的。 1. 我们以一个具体的例子,来跟踪TOMCAT, 看看它是如何把Request...原创 2013-09-16 11:48:30 · 115 阅读 · 0 评论 -
Tomcat处理HTTP请求源码分析(上
很多开源应用服务器都是集成tomcat作为web container的,而且对于tomcat的servlet container这部分代码很少改动。这样,这些应用服务器的性能基本上就取决于Tomcat处理HTTP请求的connector模块的性能。本文首先从应用层次分析了tomcat所有的connector种类及用法,接着从架构上分析了connector模块在整个tomcat中所处的位置,最后...原创 2013-09-15 15:50:19 · 175 阅读 · 0 评论 -
Tomcat处理HTTP请求源码分析(下)
多开源应用服务器都是集成tomcat作为web container的,而且对于tomcat的servlet container这部分代码很少改动。这样,这些应用服务器的性能基本上就取决于Tomcat处理HTTP请求的connector模块的性能。本文首先从应用层次分析了tomcat所有的connector种类及用法,接着从架构上分析了connector模块在整个tomcat中所处的位置,最后对...原创 2013-09-15 15:49:49 · 92 阅读 · 0 评论 -
java BIO NIO AIO 理论篇
java中的IO主要源自于网络和本地文件 IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端...原创 2013-09-11 10:26:29 · 134 阅读 · 0 评论 -
String相关
问题1:String s1 = "abc";String s2 = "abc";System.out.println(s1 == s2);这里的结果是true. 由于字符串是常量(内存中创建对象后不能修改), 而且字符串在程序中经常使用. 所以Java对其提供了缓冲区. 缓冲区内的字符串会被共享. 使用双引号的形式定义字符串常量就是存储在缓冲区中的. 使用"abc"时会先在缓冲区中查找是否存在...原创 2013-09-10 11:54:46 · 87 阅读 · 0 评论 -
JAVA方法中的参数用final来修饰的原因
JAVA方法中的参数用final来修饰的原因 很多人都说在JAVA中用final来修饰方法参数的原因是防止方法参数在调用时被篡改,其实也就是这个原因,但理解起来可能会有歧义,有的人认为是调用语句的地方的变量的实际值不会被修改,另一种理解就是仅在调用方法内部不能被修改。 实际上第一种理解是错误的,对于基本类型来说,用不用final来修饰都是一样的效果,如下面的代码: ...原创 2013-09-09 09:55:53 · 135 阅读 · 0 评论 -
采用单例模式还是静态方法?
采用单例模式还是静态方法? 关于这个问题,下面是一些同仁的观点:观点一:(单例)单例模式比静态方法有很多优势:首先,单例可以继承类,实现接口,而静态类不能(可以集成类,但不能集成实例成员);其次,单例可以被延迟初始化,静态类一般在第一次加载是初始化;再次,单例类可以被集成,他的方法可以被覆写;最后,或许最重要的是,单例类可以被用于多态而无需强迫用户只假定唯一的实例。举个例子,你可能在开始时只写...原创 2013-10-01 02:06:56 · 430 阅读 · 0 评论