随笔分类 -  java面试基础

摘要:1. 首先String不属于8种基本数据类型,String是一个对象。 因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。 2. new String()和new String(“”)都是申明一个新的空字符串,是空串不是null; 3 阅读全文
posted @ 2018-06-11 22:37 bcombetter 编辑
摘要:编写多线程程序是为了实现多任务的并发执行,从而能够更好地与用户交互。 一般有三种方法,Thread,Runnable,Callable. Runnable和Callable的区别是, (1)Callable规定的方法是call(),Runnable规定的方法是run(). (2)Callable的任 阅读全文
posted @ 2018-04-24 18:29 bcombetter 阅读(303) 评论(0) 推荐(0) 编辑
摘要:对于服务器程序来说,有个基本假设,即服务器是基于状态请求,还是基于无状态请求。根据这个假设,可以将服务器划分为状态服务器和无状态服务器。 状态服务器 如果是状态化请求,那么服务端一般需要保存请求的相关信息,每个请求可以默认地使用以前的请求信息。 状态服务器具有以下特点: - 保存客户请求的数据(状态 阅读全文
posted @ 2017-02-13 23:42 bcombetter 阅读(880) 评论(0) 推荐(1) 编辑
摘要:介绍: 在这个Boolean值的变化的时候不允许在之间插入,保持操作的原子性 方法和举例 compareAndSet(boolean expect, boolean update) 使用: private static class BarWorker implements Runnable { pr 阅读全文
posted @ 2016-12-27 13:52 bcombetter 阅读(511) 评论(0) 推荐(0) 编辑
摘要:一. 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可 阅读全文
posted @ 2016-11-18 18:39 bcombetter 阅读(12496) 评论(0) 推荐(1) 编辑
摘要:速查表: char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65535 (2 Bytes)int -2147483648 ~ +2147483647 (4 Bytes)unsigned int 0 阅读全文
posted @ 2016-10-22 00:31 bcombetter 阅读(32263) 评论(0) 推荐(0) 编辑
摘要:Session存储在服务器端,一般为了防止在服务器的内存中(为了高速存取),Sessinon在用户访问第一次访问服务器时创建,需要注意只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静态资源并不会创建Session,可调用request.getSession 阅读全文
posted @ 2016-10-13 22:32 bcombetter 阅读(1795) 评论(0) 推荐(0) 编辑
摘要:Java异常类层次结构图: 异常的英文单词是exception,字面翻译就是“意外、例外”的意思,也就是非正常情况。事实上,异常本质上是程序上的错误,包括程序逻辑错误和系统错误。 比如使用空的引用、数组下标越界、内存溢出错误等,这些都是意外的情况,背离我们程序本身的意图。错误在我们编写程序的过程中会 阅读全文
posted @ 2016-09-28 18:55 bcombetter 阅读(914) 评论(0) 推荐(0) 编辑
摘要:【转自】http://qindongliang.iteye.com/blog/2018539 ?????????????????????在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解。具体如下: 1 什么是同步? 2 什么是异步? 3 什么是阻塞? 4 什么是非阻塞? 5 什么是同 阅读全文
posted @ 2016-08-22 17:32 bcombetter 阅读(4713) 评论(0) 推荐(0) 编辑
摘要:package com.zf.s2;//创建一个包 import java.math.BigInteger;//导入类 import java.util.ArrayList; import java.util.List; public class TextFactorial {//操作计算阶乘的类 阅读全文
posted @ 2016-08-22 17:29 bcombetter 阅读(29501) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2016-08-22 17:23 bcombetter 编辑
摘要:HashMap可以允许插入null key和null value HashTable和ConcurrentHashMap都不可以插入null key和null value 集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。 比如两个线程需要同时访问一个中间临界区(Q 阅读全文
posted @ 2016-08-22 17:21 bcombetter 阅读(402) 评论(0) 推荐(0) 编辑
摘要:Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。 从此,Java被广泛接受并推动了Web的迅速发展,常 阅读全文
posted @ 2016-08-17 20:47 bcombetter 阅读(7299) 评论(0) 推荐(0) 编辑
摘要:如图,如果单链表有环,则在遍历时,在通过6之后,会重新回到3,那么我们可以在遍历时使用两个指针,看两个指针是否相等。 方法一:使用p、q两个指针,p总是向前走,但q每次都从头开始走,对于每个节点,看p走的步数是否和q一样。如图,当p从6走到3时,用了6步,此时若q从head出发,则只需两步就到3,因 阅读全文
posted @ 2016-08-14 13:48 bcombetter 阅读(601) 评论(0) 推荐(0) 编辑
摘要:单向链表是最常用的数据结构之一,因此总结其常见的问题及其解决方案是很有意义的。 问题1:如何判断一个单向链表是否有环?如果有,如何找到其入口节点的指针? 算法思想:用两个指针p1,p2同时指向链表的头部,p1一次移动一步,p2一次移动两步,如果最终p1和p2重合则说明链表有环,如果p2走到空指针(链 阅读全文
posted @ 2016-08-14 13:44 bcombetter 阅读(374) 评论(0) 推荐(0) 编辑
摘要:1. HashMap的数据结构 http://blog.csdn.net/gaopu12345/article/details/50831631 ??看一下 数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组 数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分 阅读全文
posted @ 2016-08-12 16:43 bcombetter 阅读(19264) 评论(1) 推荐(4) 编辑
摘要:拷贝的 数据结构和算法,是我们程序设计最重要的两大元素,可以说,我们的编程,都是在选择和设计合适的数据结构来存放数据,然后再用合适的算法来处理这些数据。 在面试中,最经常被提及的就是链表,因为它简单,但又因为需要对指针进行操作,凡是涉及到指针的,都需要我们具有良好的编程基础才能确保代码没有任何错误。 阅读全文
posted @ 2016-08-12 16:40 bcombetter 阅读(438) 评论(0) 推荐(0) 编辑
摘要:单链表: insertFirst:在表头插入一个新的链接点,时间复杂度为O(1) deleteFirst:删除表头的链接点,时间复杂度为O(1) 有了这两个方法,就可以用单链表来实现一个栈了,见http://blog.csdn.net/a19881029/article/details/225797 阅读全文
posted @ 2016-08-12 16:31 bcombetter 阅读(332) 评论(0) 推荐(0) 编辑
摘要:背景: 如果你定义了一个单实例的java bean,它有若干属性,但是有一个属性不是线程安全的,比如说HashMap。 并且碰巧你并不需要在不同的线程中共享这个属性,也就是说这个属性不存在跨线程的意义。 那么你不要sychronize这么复杂的东西,ThreadLocal将是你不错的选择。 why: 阅读全文
posted @ 2016-08-09 11:09 bcombetter 阅读(635) 评论(3) 推荐(0) 编辑
摘要:synchronized 1 非公平锁 2 可重入锁 其他: synchronized 是Java 语言层面的,是内置的关键字 synchronized 同步的代码块可以由JVM自动释放 ReentrantLock 1 创建公平锁和非公平锁(默认) 2 可重入锁 其他:Lock 则是JDK 5中出现 阅读全文
posted @ 2016-08-08 17:02 bcombetter 阅读(9935) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示