
java基础
学习园
冰冻三尺,非一日之寒...
展开
-
String创建对象问题
String str=new String("aaa"); 这行代码究竟创建了几个String对象呢?答案是2个,而不是3个。一个就是放在常量池中的 "aaa" 对象,而另一个就是创建出来的放在堆时原实例对象,而另当然这里的str本身只是一个引用,放在栈里,用来指向堆中创建出来的对象。 常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一转载 2014-04-21 00:45:09 · 644 阅读 · 0 评论 -
Class.forName解释
本文转自:类的生命周期 Class.forName和ClassLoader..loadClass比较 类生命周期概况 JVM为java程序提供运行时环境(runtime environment),管理类和对象的生命周期是JVM的重要工作之一。 类的生命周期从类被加载、连接和初始化开始到类被卸载结束。 只有当类在生命周期中时,才能被使用,比如调用类的静态方法或者创转载 2017-02-23 15:22:05 · 513 阅读 · 0 评论 -
java 过虑器(包装设计模式)
过虑器简介: 过虑器能对客户的请求进行预先处理,然后再将请求转发给其他web组件。 过虑器是在Servlet2.3规范中定义的,它可以对Web组件的,ServletRequest和ServletResponse进行检查和修改。 过虑器本身并不生成ServletRequest对象和Servle原创 2016-12-20 16:08:49 · 572 阅读 · 0 评论 -
java中String s="abc"及String s=new String("abc")详解
1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的转载 2016-07-21 10:41:39 · 8484 阅读 · 4 评论 -
JavaWeb在tomcat下的几种发布和访问方式
一: 众所周知,将项目放到tomcat的webapps下启动tomcat即可; 二: 将项目打成war包放到webApps下,启动tomcat,自动解压war包 三: 虚拟主机方式 1,在conf/server.xml中增加 2,修改C:\Windows\System3原创 2016-07-04 18:31:29 · 6299 阅读 · 1 评论 -
Tomcat启动分析(我们为什么要配置CATALINA_HOME环境变量)
原文地址:http://www.cnblogs.com/heshan664754022/archive/2013/03/27/2984357.html 用文本编辑工具打开用于启动Tomcat的批处理文件startup.bat,仔细阅读。在这个文件中,首先判断CATALINA_HOME环境变量是否为空,如果为空,就将当前目录设为CATALINA_HOME的值。接着判断当前目录下是否存在转载 2016-07-04 12:46:03 · 6556 阅读 · 0 评论 -
Java注释@interface的用法【转】
java用 @interface Annotation{ } 定义一个注解 @Annotation,一个注解是一个类。 @Override,@Deprecated,@SuppressWarnings为常见的3个注解。 注解相当于一种标记,在程序中加上了注解就等于为程序加上了某种标记,以后, JAVAC编译器,开发工具和其他程序可以用反射来了解你的类以及各种元素上有转载 2014-09-21 23:10:37 · 487 阅读 · 0 评论 -
URLConnection模拟浏览器发送Http请求
/** * URLConnection是在没有浏览器的情况下,也可以向http服务器发出http请求。用于模拟浏览器功能。 * @author zfx * @throws Exception */ @Test public void getDemo() throws Exception{ //1:声明url的字符串 String str = "http://127.0原创 2014-07-22 14:45:19 · 1086 阅读 · 0 评论 -
数据库连接池:dbcp和c3p0,以及数据库操作框架Dbutils
(1),dbcp连接池 1,commons-dbcp-1.4.jar原创 2014-07-23 12:29:32 · 2118 阅读 · 0 评论 -
java中接口和抽象类
在面向对象的概念中,我们知道所有的对象都是通过类来描绘的,但是并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类往往用来表征我们在对问题领域进行分析、 设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象,我们不能把它们实例化(拿不出一个具体的东西)所以称之为抽象。 比如:我们要描述“水果”,转载 2014-04-27 17:08:36 · 523 阅读 · 0 评论 -
Java中的final
final关键字可以理解为终态。 final修饰类 final修饰的类不允许被继承。 一个类不能既是final的,又是abstract的。因为abstract的主要目的是定义一种约定,让子类去实现这种约定,而final表示该类不能被继承,两者矛盾。 final修饰方法 final修饰方法,表示该方法不能被子类中的方法覆写Override。 fina转载 2014-04-27 16:26:06 · 484 阅读 · 0 评论 -
java选择排序,冒泡排序分析,附带二分法查找
/* * 选择排序 */ @Test public void test() { int[] arr = { 10, 7, 4, 3, 2, 9, 19 }; for (int i = 0; i < arr.length - 1; i++) { // 循环length-1次, 每次选择一个数放在最前面 for (int j = i + 1; j < arr.length;原创 2014-05-10 17:52:41 · 1680 阅读 · 0 评论