2019年8月15日
摘要: 一个.java文件在编译后会形成相应的一个或多个Class文件,这些Class文件中描述了类的各种信息,并且它们最终都需要被加载到虚拟机中才能被运行和使用。事实上,虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型的过程就是 阅读全文
posted @ 2019-08-15 18:22 菜鸟小于 阅读(721) 评论(0) 推荐(1) 编辑
  2019年8月13日
摘要: Java技术体系中所提倡的 自动内存管理 最终可以归结为自动化地解决了两个问题:给对象分配内存 以及 回收分配给对象的内存,而且这两个问题针对的内存区域就是Java内存模型中的 堆区。 垃圾回收机制的引入可以有效的防止内存泄露、保证内存的有效使用,也大大解放了Java程序员的双手,使得他们在编写程序 阅读全文
posted @ 2019-08-13 20:11 菜鸟小于 阅读(4217) 评论(0) 推荐(1) 编辑
  2019年8月12日
摘要: 我们都知道,Java程序在执行前首先会被编译成字节码文件,然后再由Java虚拟机执行这些字节码文件从而使得Java程序得以执行。事实上,在程序执行过程中,内存的使用和管理一直是值得关注的问题。Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些数据区域都有各自的 阅读全文
posted @ 2019-08-12 10:12 菜鸟小于 阅读(641) 评论(0) 推荐(0) 编辑
  2019年8月10日
摘要: 内容介绍 类加载器 反射构造方法 反射成员变量 反射成员方法 反射配置文件运行类中的方法 1 类加载器 1.1 类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。 加载 就是指将class文件读入内存,并为之创建一个Class对象 阅读全文
posted @ 2019-08-10 11:23 菜鸟小于 阅读(1246) 评论(0) 推荐(2) 编辑
  2019年8月9日
摘要: 内容介绍 网络通信协议 UDP通信 TCP通信 1 网络通信协议 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式、传输速 阅读全文
posted @ 2019-08-09 20:06 菜鸟小于 阅读(654) 评论(0) 推荐(0) 编辑
摘要: 内容介绍 线程安全 线程同步 死锁 Lock锁 等待唤醒机制 1 多线程 1.1 线程安全 如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。 我们通过一个案例,演示线程的安全问题: 电影院要 阅读全文
posted @ 2019-08-09 08:46 菜鸟小于 阅读(519) 评论(0) 推荐(0) 编辑
  2019年8月8日
摘要: 内容介绍 Thread 线程创建 线程池 线程状态图 1 多线程 1.1 多线程介绍 学习多线程之前,我们先要了解几个关于多线程有关的概念。 进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。 线程:线程是进程中的一个执 阅读全文
posted @ 2019-08-08 14:59 菜鸟小于 阅读(662) 评论(3) 推荐(3) 编辑
  2019年8月5日
摘要: 一、所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。排序算法在很多领域得到相当地重视,尤其是在大量数据的处理方面。一个优秀的算法可以节省大量的资源。在各个领域中考虑到数据的各种限制和规范,要得到一个符合实际的优秀算 阅读全文
posted @ 2019-08-05 08:29 菜鸟小于 阅读(631) 评论(0) 推荐(0) 编辑
  2019年8月2日
摘要: 内容介绍 Properties集合 序列化流与反序列化流 打印流 commons-IO Properties类 Properties集合 序列化流与反序列化流 打印流 commons-IO Properties类 Properties类介绍 Properties 类表示了一个持久的属性集。Prope 阅读全文
posted @ 2019-08-02 16:20 菜鸟小于 阅读(239) 评论(0) 推荐(0) 编辑
  2019年7月31日
摘要: String str=new String("abc"); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢? 相信大家对这道题并不陌生,答案也是众所周知的,2个。 接下来我们就从这道题展开,一起回顾一下与创建String对象相关的一些JAVA知识。 我们可以把上面 阅读全文
posted @ 2019-07-31 08:16 菜鸟小于 阅读(2798) 评论(0) 推荐(0) 编辑