随笔分类 - (1)Java基础
摘要:java把内存划分为两种:一种是栈(stack)内存,一种是堆(heap)内存 在函数中定义的一些基本类型的变量和对象的引用变量都在栈内存中分配,当在一段代码块定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量所分配的内存空间,该内存空间可以立
阅读全文
摘要:1.一个类中至少有一个构造方法,如果没有定义的话,编译器会自动为其定义一个 类名(){ } ,它是定义在java类中的一个用来初始化对象的函数。但是需要注意的是,一旦你定义了其它任何构造方法,系统就不会为你添加空的构造方法了。所以有时候如果想在创建对象的时候实现初始化任务,注意构造方法的定义和对象的
阅读全文
摘要:* 局部变量,在“使用之前”都需要初始化,而成员变量可以不初始化,因为它是依赖于对象而存在的,当在普通方法里 * 调用成员变量时,其实对象已经存在,而对象在初始化的过程中会先看有没有对应类的class文件,如果没有就加载,然后进行 * 初始化,在初始化的过程中它先对变量默认初始化再显示初始化,如果有
阅读全文
摘要:四种方法解析XML文档:Dom、SAX、JDOM、dom4j 1、了解XML XML,即可扩展标记语言(Extensible Markup Language),标准通用标记语言的子集,一种用于标记电子文件使其具有结构性的标记语言。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定
阅读全文
摘要:理解类在JVM中什么时候被加载和初始化是Java编程语言中的基础概念,正因为有了Java语言规范,我们才可以清晰的记录和解释这个问题,但是很多Java程序员仍然不知道什么时候类被加载,什么时候类被初始化,类加载和初始化好像让人很困惑,对初学者难以理解,在这篇教程中我们将看看类加载什么时候发生,类和接
阅读全文
摘要:instanceof 针对实例 isAssignableFrom针对class对象 isAssignableFrom 是用来判断一个类Class1和另一个类Class2是否相同或是另一个类的超类或接口。 通常调用格式是 Java代码 Class1.isAssignableFrom(Class2) J
阅读全文
摘要:实际上,Filter与Servlet及其相似,区别只是FIlter的doFilter()方法里多了一个FilterChain的参数,通过该参数可以控制是否放行用户的请求。网站有了过滤器十分的方便,可以通过过滤器来过滤这个用户是否已经登陆,如果没有登陆,那么将限制TA的访问权限,而且过滤器的设置以及配
阅读全文
摘要:lassLoader主要对类的请求提供服务,当JVM需要某类时,它根据名称向ClassLoader要求这个类,然后由ClassLoader返回这个类的class对象。 ClassLoader负责载入系统的所有资源(Class,文件,图片,来自网络的字节流等),通过ClassLoader从而将资源载入
阅读全文
摘要:一旦类被装载,所有的static语句被运行。而此时成员方法,变量的代码一行行的放在了内存中,并不会执行!所以静态方法里不能用非静态的变量,因为他们并不存在,而静态变量、静态方法都是存在数据区的他们实实在在的存在,所以可以用他们。如果要使用非静态变量或方法,必须先实例化一个对象,它们依附于对象,这样在
阅读全文
摘要:1、启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点。 2、紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文。 3、容器将<context-par
阅读全文
摘要:重载:方法名相同,但参数不同的多个同名函数 注意:1.参数不同的意思是参数类型、参数个数、参数顺序至少有一个不同 2.返回值和异常以及访问修饰符,不能作为重载的条件(因为对于匿名调用,会出现歧义,eg:void a ()和int a() ,如果调用a(),出现歧义) 3.main方法也是可以被重载的
阅读全文
摘要:概述 对从事C和C++的程序员来说,在内存管理方面,他们既是拥有最高权利的人,也是从事最基础工作的“劳动人民”。 而对于Java程序员来说,JVM自动进行内存管理,程序员不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄露和内存溢出问题。 但是,正因为JVM帮我们管理了
阅读全文
摘要:参加一个笔试,有一个关于类的静态代码块、构造代码块、构造函数的执行顺序的问题。不太清楚,网上百度了一下。在这里记录一下。 一、什么时候会加载类?使用到类中的内容时加载:有三种情况1.创建对象:new StaticCode();2.使用类中的静态成员:StaticCode.num=9; StaticC
阅读全文
摘要:一直在用一些东西,却总是感觉有一些疑惑,今天发现了自己一个及其致命的意识错误。关于父类中this关键字到底是谁的问题。请看代码 父类Parent [java] view plain copy public class Parent { public Parent(){ System.out.prin
阅读全文
摘要:本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java。这类文章网上有很多,但大多比较零碎。本文从认知过程角度出发,将带给读者一个系统的介绍。 进入正题前首先要知道的是Java程序运行在JVM(Java Virtual Machine,Java虚拟机)上,可以把JVM理解成Ja
阅读全文
摘要:Java是一种动态加载和运行的语言。也就是说当应用程序持有一个类的地址(CLASSPATH)和名称(包名和类名)的情况下,可以在程序运行期 间任何时候加载这个类,并创建和使用该类的对象。Servlet就是基于这个机制与Web容器融合在一起的。目前已知的所有支持Java Servlet的Web容器都是
阅读全文
摘要:一、什么是流? 流就是字节序列的抽象概念,能被连续读取数据的数据源和能被连续写入数据的接收端就是流,流机制是Java及C++中的一个重要机制,通过流我们可以自由地控制文件、内存、IO设备等数据的流向。而IO流就是用于处理设备上的数据,如:硬盘、内存、键盘录入等。IO流根据处理类型的不同可分为字节流和
阅读全文
摘要:这篇文章主要介绍了Java正则表达式入门学习基础知识,全面分析了表示匹配次数的符号使用方法,感兴趣的小伙伴们可以参考一下 许多语言,包括Perl、PHP、Python、JavaScript和JScript,都支持用正则表达式处理文本,一些文本编辑器用正则表达式实现高级“搜索-替换”功能。所以JAVA
阅读全文
摘要:一、面向对象最核心的机制——动态绑定,也叫多态 1.1.通过下面的例子理解动态绑定,即多态 运行结果: 1.2.画内存图理解动态绑定(多态) 首先从main方法的第一句话开始分析: Cat c = new Cat("Catname","blue"); 程序执行到这里,栈空间里有一个变量c,c里面装着
阅读全文
摘要:首先 classpath是指 WEB-INF文件夹下的classes目录 解释classes含义: 1.存放各种资源配置文件 eg.init.properties log4j.properties struts.xml 2.存放模板文件 eg.actionerror.ftl 3.存放class文件
阅读全文

浙公网安备 33010602011771号