摘要: 1.原因 JVM在程序运行过程当中,会创建大量的对象,这些对象,大部分是短周期的对象,小部分是长周期的对象,对于短周期的对象,需要频繁地进行垃圾回收以保证无用对象尽早被释放掉,对于长周期对象,则不需要频率垃圾回收以确保无谓地垃圾扫描检测。为解决这种矛盾,Sun JVM的内存管理采用分代的策略。 2. 阅读全文
posted @ 2019-05-13 14:04 xiaobai1202 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 1.概述 我们知道,程序就是用来处理数据的。对于每一件现实中的问题,我们也是将其抽象成数据+对数据的操作。所以数据的格式决定着我们操作他们的形式。 我们可以想象在超市中排队结账的情景,很多人排成一条长队,而新来的人要排在队的后面,结账的人一定是在队列最前面的人。(不考虑没有素质的行为) 我们还可以想 阅读全文
posted @ 2019-05-13 13:37 xiaobai1202 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 1.概述 就本质而言 “泛型”的意思就是参数化类型。参数化类型很重要,因为使用该特性创建的类、接口以及方法可以以参数的形式指定操作的数据类型。 泛型通俗的说就是方法的返回值或参数是不确定的,可以随创建该类对象时改变而改变。 泛型提供了以前缺失的类安全性,并且还可以简化处理过程(例如避免进行强制类型转 阅读全文
posted @ 2019-05-12 15:09 xiaobai1202 阅读(932) 评论(0) 推荐(0) 编辑
摘要: 1.概述 异常是程序在运行过程中产生的非正常情况,换句话说,异常就是运行时错误。在不支持异常处理的编程语言中必须手动检查错误,java避免了这个麻烦,并且在处理过程中采用面向对象的方式管理错误。 java中的异常是用来描述代码在运行过程中产生的错误及错误位置的对象。在产生异常时就会创建用来表示异常的 阅读全文
posted @ 2019-05-11 15:00 xiaobai1202 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 1.概述 由于java是一门面向对象的语言,也为了支持基本类型的面向对象编程,同时,基本类型也是必不可少的一部分(其实java的各个方法内部实现步骤也是面向过程的)。 这时为了解决这个矛盾,一种新的类产生了——基本类型包装类 ,在方法中我们使用基本类型,当需要面向对象编程时,我们就使用包装类,编译器 阅读全文
posted @ 2019-05-11 12:35 xiaobai1202 阅读(663) 评论(0) 推荐(0) 编辑
摘要: 1.基本概念 早期我们在定义一组常量的时候一般是使用一个接口,将常量定义成接口中的成员,同时接口中还有一些需要被子类实现的方法。从JDK1.5 开始,我们可以使用一种新的方式来定义常量 这种新的方式就是枚举类型,我们只是用枚举来定义常量,方便程序的理解和维护。 2.枚举的定义方式 2.1 语法: 枚 阅读全文
posted @ 2019-05-11 10:26 xiaobai1202 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 1.基本概念 双亲委托机制:当某个特定的类加载器在接收到加载类的请求时,首先将该加载任务发送给父类加载器,若父类加载器仍有父类,则继续向上追溯,直到最高级。 如果最高级父类能够加载到该类,则成功返回,否则由其子类进行加载。以此类推,如果到最后一个子类还不能成功加载,则抛出一个异常。 作用:可以保证j 阅读全文
posted @ 2019-05-09 20:22 xiaobai1202 阅读(1185) 评论(0) 推荐(0) 编辑
摘要: 1.概述 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机的类加载机制。下面我们将详细的讨论一下类的加载过程 与那些编译时需要进行链接的语言不同,在java语言中,类的加载、链接和初始化都是在程序运行期间完成 阅读全文
posted @ 2019-05-09 19:47 xiaobai1202 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1.概述 对象的内存分配,往大方向上讲,就是在堆上分配内存。对象主要分布在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配。少数情况下也可直接分配在老年代中。 分配的规则并不是百分百固定的,其细节取决于当前使用的是哪一种垃圾收集器组合和虚拟机中与内存相关的参数设置。 接 阅读全文
posted @ 2019-05-09 13:52 xiaobai1202 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 本文主要记录内部类、匿名内部类、局部内部类、lambda表达式的用途和lambda表达式的推导及使用 1.直接内部类 直接内部类可以分为两种: 成员内部类和静态内部类 1.1 成员内部类 成员内部类,就如同成员一样存在一个类中,该内部类可以直接访问外部类成员和方法,但是外部类不能使用内部类方法或者属 阅读全文
posted @ 2019-05-09 09:00 xiaobai1202 阅读(392) 评论(0) 推荐(0) 编辑