随笔分类 -  java基础

摘要:object里面有12个方法,没写完,写一些部分代表 toString():输出对象的地址字符串(hashcode码) equals():用的是==,比较的是引用,在有些类里面是重写了这个方法的,重写了的比较的是值 clone():浅复制,创建并返回这个对象的一个副本 -> protected修饰 阅读全文
posted @ 2018-09-16 10:44 ccxka 阅读(238) 评论(0) 推荐(0)
摘要:可见性: JAVA内存模型: java为了加快程序的运行效率,对一些变量的操作是在寄存器或者CPU缓存上进行的,后面再同步到主存中 看上图,线程在运行的过程中,会从主内存里面去去变量,读到自己的空间内,最后再刷新进去,而volatile的出现,使得可以直接去主存中数据,换句话来说,一般情况下更新了数 阅读全文
posted @ 2018-09-07 10:36 ccxka 阅读(223) 评论(0) 推荐(0)
摘要:执行以上代码,奇怪的是打印出来i的结果是0,说简单点,i++是一个表达式,是有返回值的,返回的是自增之前的值! 阅读全文
posted @ 2018-09-03 15:09 ccxka 阅读(430) 评论(2) 推荐(0)
摘要:1、三个类之间的关系 他们都是通过字符数组来实现的,继承关系 String:字符串常量,不可变类 StringBuffer:字符串变量,可变类,线程安全 StringBuilder:字符串变量,可变类,线程不安全 2、执行速度 String < StringBuffer < StringBuildr 阅读全文
posted @ 2018-09-03 10:51 ccxka 阅读(1389) 评论(0) 推荐(0)
摘要:Java中只有值传递 https://www.cnblogs.com/xiaoxiaoyihan/p/4883770.html,参考这个博主的,写到很好,但是没有说String 在java API中,对于String有这样的一段描述(这里是中文版,去看英文版也是这个意思) 所以在String虽然是引 阅读全文
posted @ 2018-08-27 14:32 ccxka 阅读(126) 评论(0) 推荐(0)
摘要:一、多线程的基本概念 1.什么是进程、多进程有什么作用? 大家都使用计算机,当我们打开某一个软件的时候,其实就是启动了一个进程,可以打开任务管理器看看,我们打开的每一个软件,都是一个进程,在同一个操作系统中,可以同时启动多个进程。 单进程计算机只能在一个时间内做一件事情。在我们打开办公软件的的时候, 阅读全文
posted @ 2018-08-23 16:30 ccxka 阅读(267) 评论(0) 推荐(0)
摘要:什么是HashSet?操作过程是怎么样的? 1、HashSet底层实际上是一个HashMap,HashMap底层采用了哈希表数据结构 2、哈希表又叫做散列表,哈希表底层是一个数组,这个数组中每一个元素是一个单向链表,每个单向链表都有一个独一无二的hash值,代表数组的下标。在某个单向链表中的每一个节 阅读全文
posted @ 2018-08-21 10:36 ccxka 阅读(5165) 评论(1) 推荐(0)
摘要:为什么要使用泛型? 在Java中增加泛型之前,泛型程序设计是用继承来实现的,例如ArrayList,只维护Object引用的数组: 在这里有一个问题,就是每次使用的时候,都必须进行一次强制类型转换 可以发现还没有错误检查,如果是其他类型会检测不到,当添加的时候,可以是任何类的对象 每次都转换一次很麻 阅读全文
posted @ 2018-08-20 18:52 ccxka 阅读(386) 评论(0) 推荐(2)