
java语言
彭召
这个作者很懒,什么都没留下…
展开
-
java中断言的理解
断言是软件开发中一种常用的调试方式,在实现中,断言就是在程序中的一条语句,他对一个布尔表达式进行检查,一个正确的程序必须保证这个boolean表达式的值为true,若该值为false,则说明程序已经处于不正确的状态下,系统将给出警告并退出。如果断言失败则抛出AssertionError 异常,AssertionError 类继承自Error类,error类继承自Throwable类,...原创 2018-07-19 09:37:02 · 2556 阅读 · 0 评论 -
Java中堆和栈的区别
1.Java中的基本数据类型和对象的引用变量内存分配在栈上,变量出了作用域自动释放;引用类型变量内存分配在堆上或者常量池(字符串常量池,基本类型常量池),即创建的对象存放在堆上。2.栈内存的管理通过压栈弹栈完成,栈基本单位是栈帧,函数调用时候通过压栈创建新的栈帧,调用结束后通过弹栈释放栈帧。堆用来存放运行时创建的对象,new出来的对象都放在堆上。JVM是基于堆的虚拟机,每个java程序运行在单...原创 2018-07-19 09:36:39 · 224 阅读 · 0 评论 -
java中的数据类型
Java中的类型有8大基本数据类型和引用数据类型(数组,字符串,类,接口)。基本数据类型变量中存放的是实际值,引用数据类型变量中存放的是对象的地址。8大基本数据类型为byte(1字节) short(2字节) char(2字节) int(4字节) long(8字节) float(4字节) double(8字节) boolean字节数不确定。理论上boolean类型占1bit,考虑到字节对齐等因素...原创 2018-07-19 09:36:16 · 107 阅读 · 0 评论 -
类加载机制
Java中类只有被加载进JVM中后才可以运行。程序运行时候,JVM会将编译生成.class文件加载到内存,组织成一个完成的java程序。加载过程由类加载器(ClassLoader和它的子类)完成。类加载器本身也是一个类,实质是把类文件从硬盘读取到内存。 类加载分为:1)隐式加载:程序new一个对象的时候,隐式的调用类加载器把对应的类加载到虚拟机(2)显式加载:直接调用class.for...原创 2018-07-18 10:49:54 · 174 阅读 · 0 评论 -
线程池的理解
如果并发的线程很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。Java中通过线程池来使得线程复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务。java.uitl.concurrent.ThreadPoolExecutor类是线程池中最核心的一个类,ThreadPoolExecutor继承了Abst...原创 2018-07-18 10:49:30 · 348 阅读 · 0 评论