- 浏览: 30731 次
- 性别:
- 来自: 广州
最近访客 更多访客>>
最新评论
-
DragCheng:
这标题亮了
深入研究java.long.Class类(转) -
油炸大龙虾:
这个标题害人啊,哎……
深入研究java.long.Class类(转)
文章列表
一、TCP/IP 协议介绍
在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容。TCP/IP协议是分层的,从底层至应用层分别为:物理层、链路层、网络层、传输层和应用层,如下图所示:
TCP/IP基础--层次图
从应用层至物理层,数据是一层层封装,封装的方式一般都是在原有数据的前面加一个数据控制头,数据封装格式如下:
TCP/IP基础--数据封装
其中,对于TCP传输协议,客户端在于服务器建立连接前需要经过TCP三层握手,过程如下:
TCP/IP基础--TCP三次握手
二、HTTP协议
2.1 简介
超文本传输协议(Hypertext Transf ...
JAVA内存溢出解析
核心提示:原因有很多种,比如: 1.数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象; 2.虚拟机不回收内存(内存泄漏); 说白了就是程序运行要用到的内存大于虚拟 ...
问题的提出
Java 的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。
随着越来越多的服务器程序采用Java技术,例如JSP,Servlet, EJB等,服务器程序往往长期运行。另外,在很多嵌入式系统中,内存的总量非常有限。内存泄露问题也就变得十分关键,即使每次运行少量泄漏,长期运行之后,系统也是面临崩溃的危险。
Ja ...
Java方法继承、方法重载、方法覆盖小总结
1、方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。
* 当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法
* ...
类的初始化工作,主要是将静态变量、常量初始化为“正确”的值(也就是程序员希望设定的特定值而非其类型的默认值),以及其它一些需要在初始化类的时候需要做的工作(如读取配置文件等)。通常我们可以这样做:
Jav ...
《Inside the JVM》一开始就指出,所谓“虚拟机”实际上在不同的语境下有不同的涵义。有时候它指的是虚拟机的“规范”(spec),有时候指的是虚拟机的具体实现(如Sun JDK, BEA JRockit),有时候指的是正在运行着的一个虚拟机的实例(你启动Tomcat或者JBoss,甚至一个j2se程序,都同时启动了一个虚拟机实例)。书中如无特别说明,指的一般都是“规范”。
虚拟机规范规定了.class文件的格式、类装载的规则、运行时内存的逻辑区块、方法调用时栈的动作等等。一旦某个虚拟机的具体实现(如Open JDK)声称它实现了Java虚拟机规范,那么也就是同时声称它在运行时的 ...
深入探索Java工作原理:JVM,内存回收及其他
Java语言引入了Java虚拟机,具有跨平台运行的功能,能够很好地适应各种Web应用。同时,为了提高Java语言的性能和健壮性,还引入了如垃圾回收机制等新功能,通过这些改进让Java具有 ...
一、Include指令
<jsp:include>标签表示包含一个静态的或者动态的文件。
语法:
<jsp:include page="path" flush="true" />
or
<jsp:include page="path" flush="true">
<jsp:param name="paramName" value="paramValue" />
</jsp:include>
注:
1、page=& ...
SP内置对象(9个常用的内置对象)
1.request对象
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。
序号 方 法 说 明
1 object getAttribute(String name) 返回指定属性的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 String getCharacterEncoding() 返回字符编码方式
4 int getContentLength() 返回请求体的长度(以字节数)
5 Str ...
SQL语言的分类
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,
数据定义语言DDL,数据控制语言DCL。
1 数据查询语言DQL Q = Query (Data Query Language)
数据查询语言DQL用于检索数据库 查询数据库的数据
基本结构是由SELECT子 ...
在网上看见一个关于java继承的问题,觉得这是很多初学java应该注意的问题。
Java代码
public abstract class A {
int i=1;
public void printI() {
System.out.println("i="+i);
}
}
public class B extneds A{
int i=2;
public static void main(Stri ...
这次我想深入探究以下java里类的继承机制。
我们知道,继承是java设计里的一个失败的地方。高司令说过:如果让他重新设计java的话,他会把继承去掉。而java里继承到底怎么了,会这么不受人欢迎呢?
我们知道,继承设计的初衷是为了代码复用。在C++里也确实做到了这一点,因为C++允许多重继承。特别是C++里的析构函数,申明为了virtual的时候可以多重复用,用起来也很舒服。
那么为什么在java里继承就这么让人诟病呢?
第一:java里的类不能多重继承,如果一个类一旦继承了它的父类,那么它就别想再继承别的类。一个儿子只能有一个老爸,原本设计是没错的。可是在实际应用中,就会出现各种问题。
第二 ...
java 继承类 变量、静态变量、构造函数执行顺序
class C{
static int prt(int i){
System.out.println(i);
return i;
}
}
class A{
int a=C.prt(0);
static int b=C.prt(1);
A(){
System.out.println("constructor of A");
}
}
class B extends A{
int c=C.prt(2);
static int d=C.prt(3);
B(){
...
map,set,list,等JAVA中集合解析
在JAVA的util包中有两个所有集合的父接口Collection和Map,它们的父子关系:
java.util
+Collection 这个接口extends自 --java.lang.Iterable接口
+List 接口
...
两个都可以用于从 classpath 里面进行资源读取, classpath包含classpath中的路径
和classpath中的jar。
两个方法的区别是资源的定义不同, 一个主要用于相对与一个object取资源,而另一个用于取相对于classpath的
资源,用的是绝对路径。
在使用Class.getResourceAsStream 时, 资源路径有两种方式, 一种以 / 开头,则这样的路径是指定绝对
路径, 如果不以 / 开头, 则路径是相对与这个class所在的包的。
在使用ClassLoader.getResourceAsStream时, 路径直接使用相对于classpath ...