随笔分类 -  java提高

摘要:一、基本数据类型 对象类型 1、首先想一个问题,有了基本类型之后为什么还要有包装器类型呢? 核心:让基本类型具备对象的特征,实现更多的功能. Java是一个面相对象的编程语言,基本类型并不具有对象的性质,为了让基本类型也具有对象的特征,就出现了包装类型。 我们在使用集合类型map、list时就一定 阅读全文
posted @ 2018-06-18 14:21 清晨_ 阅读(400) 评论(0) 推荐(0)
摘要:封装 概念:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。是面向对象三大特征之一。 好处:将变化隔离。提高重用性。提高安全性。 封装原则: • 将不需要对外提供的内容都隐藏起来。 • 把属性都隐藏,提供公共方法对其访问。 Java中可以通过对类的成员设置一定的访问权限,实现类中成员的信息隐藏 阅读全文
posted @ 2018-06-17 14:28 清晨_ 阅读(3685) 评论(0) 推荐(5)
摘要:一、为什么需要垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断的分配内存空间而不进行回收。除非内存无限大,我们可以任性的分配而不回收,但是事实并非如此。所以,垃圾回收是必须的。 二、哪些内存需要回收? 哪些内存需要回收是垃圾回收机制第一个要考虑的问题,所谓“要回收的垃圾”无非就是那 阅读全文
posted @ 2018-06-13 20:28 清晨_ 阅读(444) 评论(0) 推荐(0)
摘要:1、堆外内存定义 内存对象分配在Java虚拟机的堆以外的内存,这些内存直接受操作系统管理(而不是虚拟机),这样做的结果就是能够在一定程度上减少垃圾回收对应用程序造成的影响。使用未公开的Unsafe和NIO包下ByteBuffer来创建堆外内存。 2、为什么使用堆外内存 1、减少了垃圾回收 使用堆外 阅读全文
posted @ 2018-06-13 13:41 清晨_ 阅读(14818) 评论(1) 推荐(1)
摘要:首先看代码 打印结果是0,而如果是i=++i,那么打印将会1。下面我们从字节码的角度来分析为什么是这样。 在讲字节码之前,先简单的了解下Java栈,在JVM中有这么一个数据结构叫Java栈,当线程启动的时候,会分配一块内存当做该线程的栈,每个栈由一系列的栈帧组成。每个栈帧对应一个方法,当线程执行方法 阅读全文
posted @ 2018-04-30 18:35 清晨_ 阅读(400) 评论(0) 推荐(0)
摘要:一、基础篇 1.1、Java基础 面向对象的特征:继承、封装和多态 final, finally, finalize 的区别 Exception、Error、运行时异常与一般异常有何异同 请写出5种常见到的runtime exception int 和 Integer 有什么区别,Integer的值 阅读全文
posted @ 2018-03-10 10:54 清晨_ 阅读(333) 评论(1) 推荐(1)
摘要:转载自:http://blog.csdn.net/lylwo317/article/details/52163304 首先写一个简单的自定义注解小程序 //先自定义一个运行时注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME 阅读全文
posted @ 2018-03-07 14:39 清晨_ 阅读(927) 评论(0) 推荐(1)
摘要:1、按值传递是什么 传递的是值的拷贝,也就是说传递后就互不相关了(基本数据类型和String都是这样)。 public class Test { private void test(int a){ a = 5; System.out.println("test方法中的a "+a); } public 阅读全文
posted @ 2018-01-06 11:24 清晨_ 阅读(160) 评论(0) 推荐(0)