摘要: 类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其 阅读全文
posted @ 2018-09-07 23:47 不过_梦一场 阅读(237) 评论(0) 推荐(0) 编辑
摘要: Java语言中,子类是不能访问父类的私有成员的,包括成员变量和方法,但可以通过Java的反射机制去访问。 其实在一个子类被创建的时候,首先会在内存中创建一个父类对象,然后在父类对象外部放上子类独有的属性,两者合起来形成一个子类的对象。所以所谓的继承使子类拥有父类所有的属性和方法其实可以这样理解,子类 阅读全文
posted @ 2018-09-07 23:05 不过_梦一场 阅读(2575) 评论(0) 推荐(0) 编辑
摘要: final变量,如果是基本数据类型,则其数值一旦初始化后就不能被改变。如果是引用类型的变量,则对其初始化后,便不能再指向另一个对象,但是其里面的值是可以改变的。引用变量所指向的对象中的内容是可以改变的。 final 变量: final 变量能被显式地初始化并且只能初始化一次。被声明为 final 的 阅读全文
posted @ 2018-09-07 22:56 不过_梦一场 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 1.session用来表示用户会话,session对象在服务端维护,一般tomcat设定session生命周期为30分钟,超时将失效,也可以主动设置无效; 2.cookie存放在客户端,可以分为内存cookie和磁盘cookie。内存cookie在浏览器关闭后消失,磁盘cookie超时后消失。当浏览 阅读全文
posted @ 2018-09-07 22:47 不过_梦一场 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 子类调用父类构造方法的顺序 子类的构造方法总是先调用父类的构造方法,如果子类的构造方法没有明显地指明使用父类的哪个构造方法,子类就调用父类不带参数的构造方法。而父类没有无参的构造函数,所以子类需要在自己的构造函数中显示的调用父类的构造函数。 如果子类构造器没有显示地调用超类的构造器,则将自动地调用超 阅读全文
posted @ 2018-09-07 22:40 不过_梦一场 阅读(2307) 评论(0) 推荐(0) 编辑
摘要: 接口没有构造方法,所以不能实例化,抽象类有构造方法,但是不是用来实例化的,是用来初始化的。 java支持单继承,却可以实现多个接口。 抽象类可以定义普通成员变量而接口不可以,但是抽象类和接口都可以定义静态成员变量,只是接口的静态成员变量要用static final public 来修饰 阅读全文
posted @ 2018-09-07 22:20 不过_梦一场 阅读(6697) 评论(0) 推荐(0) 编辑
摘要: 首先,需要明白类的加载顺序。详情请参考https://www.cnblogs.com/wwb0811/p/9602148.html (1) 父类静态代码块(包括静态初始化块,静态属性,但不包括静态方法) (2) 子类静态代码块(包括静态初始化块,静态属性,但不包括静态方法 ) (3) 父类非静态代码 阅读全文
posted @ 2018-09-07 22:15 不过_梦一场 阅读(1271) 评论(0) 推荐(0) 编辑
摘要: Ant和Maven都是基于Java的构建(build)工具。理论上来说,有些类似于(Unix)C中的make ,但没有make的缺陷。Ant是软件构建工具,Maven的定位是软件项目管理和理解工具。 Ant特点 1.没有一个约定的目录结构 2.必须明确让ant做什么,什么时候做,然后编译,打包 3. 阅读全文
posted @ 2018-09-07 21:53 不过_梦一场 阅读(1204) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal类用于创建一个线程本地变量 在Thread中有一个成员变量ThreadLocals,该变量的类型是ThreadLocalMap,也就是一个Map,它的键是threadLocal,值为就是变量的副本。通过ThreadLocal的get()方法可以获取该线程变量的本地副本,在get 阅读全文
posted @ 2018-09-07 21:38 不过_梦一场 阅读(448) 评论(0) 推荐(0) 编辑
摘要: public>protected>默认(包访问权限)>private,因为protected除了可以被同一包访问,还可以被包外的子类所访问 阅读全文
posted @ 2018-09-07 21:36 不过_梦一场 阅读(122) 评论(0) 推荐(0) 编辑
摘要: Java 成员变量有初始值,而局部变量没有初始值。 如下所示,代码不能编译通过 public static void main(String[] args){ String s; System.out.println("s="+s); } public static void main(String 阅读全文
posted @ 2018-09-07 18:02 不过_梦一场 阅读(1568) 评论(0) 推荐(0) 编辑
摘要: 集合中线程安全的类有:vector,stack,hashtable,enumeration,除此之外均是非线程安全的类与接口 Collection 是对象集合, Collection 有两个子接口 List 和 Set, List 可以通过下标 (1,2..) 来取得值,值可以重复,而 Set 只能 阅读全文
posted @ 2018-09-07 01:16 不过_梦一场 阅读(2343) 评论(0) 推荐(0) 编辑
摘要: HashMap不能保证元素的顺序,HashMap能够将键设为null,也可以将值设为null。 与之对应的是Hashtable,(注意大小写:不是HashTable),Hashtable不能将键和值设为null,否则运行时会报空指针异常错误; HashMap线程不安全,Hashtable线程安全 阅读全文
posted @ 2018-09-07 01:11 不过_梦一场 阅读(23434) 评论(0) 推荐(1) 编辑
摘要: 父类的静态成员初始化>父类的静态代码块>子类的静态成员初始化>子类的静态代码块>父类成员变量>父类的代码块>父类的构造方法>子类成员变量>子类的代码块>子类的构造方法 注意: 1.静态成员和静态代码块只有在类加载的时候执行一次,再次创建实例时,不再执行,因为只在方法区存在一份,属于一整个类。 2.上 阅读全文
posted @ 2018-09-07 01:03 不过_梦一场 阅读(509) 评论(3) 推荐(0) 编辑