面试题
马超的博客
Stay Hungry, Stay Foolish
展开
-
Hadoop工程师面试题解析
下面哪个程序负责 HDFS 数据存储。答案C datanodea)NameNode b)Jobtracker c)Datanode d)secondaryNameNode e)tasktrackerHDfS 中的 block 默认保存几份? 答案A默认3分a)3 份 b)2 份 c)1 份 d)不确定下列哪个程序通常与 NameNode 在一个节点启动?答案Da)Secon原创 2016-06-08 17:33:18 · 1616 阅读 · 0 评论 -
JAVA基础知识整理(二)
6.聊聊集合 list(ArrayList,linkedlist,vector),set(hashset,linkedset,treeset),map(hashmap) 1.Set接口 Set是一个不包含重复元素的集合,是数学中“集合”的抽象。Set接口扩展了Collection,并且禁止重复的元素。,equals和hashcode操作有了更强的约定,使得不同实现的Set对象之间可以进原创 2017-04-02 21:58:57 · 428 阅读 · 0 评论 -
JAVA基础知识整理(四)
19.java中异常类的结构,你了解哪些异常,什么时候出现 所有异常都是有Throwable继承而来的,再下一层分为两个分支error和RuntimeException。 派生于RuntimeException: 错误的类型转换。 数组访问越界。 访问空指针。 不是派生于RuntimeException的异常: 试图在文件尾部读取数据。 试图打开一个不存在的文件。 试图根据不存在的原创 2017-04-03 18:21:54 · 664 阅读 · 0 评论 -
JAVA基础知识整理(五)
24.threadlocal的设计理念与作用(这个网上有的说法有错误,认真甄别)25.java Io与NIO26.HashMap与HashTable的区别 HashMap类与HashTable类很相似,只是HashTable类不允许有空的关键字,而HashMap类允许。 另外,HashMap是非线程安全的,HashTable是线程安全的。下面是一些问的较少的,有兴趣的看看就行 26.反射的作用原创 2017-04-03 18:24:20 · 494 阅读 · 0 评论 -
JAVA基础知识整理(六) ---JVM
jvm(推荐阅读深入理解jvm虚拟机)1.堆和栈有什么区别,都存放什么(哪些资源线程共享,哪些资源线程独享) stack 和 heap 都是内存的一部分 。 stack 空间小,速度比较快, 用来放对象的引用 heep 大,一般所有创建的对象都放在这里。 2.java垃圾回收机制 Java的垃圾回收机制是Java虚拟机提供的能力,用于在空闲时间以不定时的方式动态回收无任何引用原创 2017-04-03 20:36:11 · 427 阅读 · 0 评论 -
JAVA基础知识整理(七) ---数据库
1.left join,right join区别 2.MyIsam,Innodb区别 3.mysql优化手段 4.如何查看mysql执行计划 5.索引是什么,有什么用,如何建立 6.存储过程有什么好处 7.乐观锁,悲观锁是什么 8.having和where区别 9.事务的隔离级别 10.ACID含义 11.一,二,三,四范式含义 12.各种表连接,子查询语句需使用熟练。原创 2017-04-03 21:35:29 · 506 阅读 · 0 评论 -
JAVA基础知识整理(三)
HashMap的实现,问的真的炒鸡多详细看下面链接: Java HashMap工作原理及实现HashMap工作原理HashMap和Hashtable区别HashMap和ConcurrentHashmap区别什么时候会使用HashMap?他有什么特点? 是基于Map接口的实现,存储键值对时,它可以接收null的键值,是非同步的,HashMap存储着Entry(hash, key, value,转载 2017-04-02 22:37:25 · 496 阅读 · 0 评论 -
面试题(JAVA)(一)
一、单项选择题 1.以下程序运⾏的结果为(A)public class Example extends Thread{ @Override public void run(){ try{ Thread.sleep(1000); }catch(InterruptedException e){ e.printStackTrace();原创 2017-04-05 18:02:24 · 792 阅读 · 0 评论 -
面试题(JAVA)(二)
简答题 1、请简述java反射机制 解析: 在运行时判断任意一个对象所属的类; 在运行时构造任意一个类的对象; 在运行时判断任意一个类所具有的成员变量和方法; 在运行时调用任意一个对象的方法; 生成动态代理。2、JDK和JRE的区别 解析: JDK是Java开发工具包,JDK是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆J原创 2017-04-05 18:14:08 · 899 阅读 · 0 评论 -
Java泛型的上限和下限
原文博客:Java泛型4—泛型的上限和下限 在写程序的时候,我们希望某一个函数接收的参数,有一个范围的限制,这时候我们就可以考虑使用泛型的上限和下限去解决。class Point<T>{ private T x; private T y; public T getX() { return x; } public void setX(T x)转载 2017-04-06 21:17:48 · 1993 阅读 · 0 评论 -
JAVA基础知识整理(一)
1.八种基本数据类型的大小以及他们的封装类(顺带了解自动拆箱与装箱)。 原始类型 大小 包装类型 char 2字节 Character boolean 1字节 Boolean byte 1字节 Byte short 2字节 Short int 4字节 Integer long 8字节 Long float 4字原创 2017-04-02 21:00:34 · 295 阅读 · 0 评论 -
JVM笔记
一、调试可以用的工具。GC工具。 Jmap/Jhat –OutOfMemoryerror —dump一个java heap文件 Jstack打印调用栈 查Log JDB Jstat查看JAVA heap情况 —java heap较大时比较耗时 eclipse借助JDWP协议进行远程调式二、GC垃圾回收 年轻代 年老代 永久代 对于三者使用的总结: 1.如果要操作少量的数据用原创 2017-04-01 22:59:46 · 347 阅读 · 0 评论 -
JAVA网络程序设计的基本概念
一、协议相关 IP (网络之间互联的协议)internet协议是最底层的协议,它定义了数据按照数据报传输的格式和规则。TCP (传输控制协议)建立在IP协议之上,定义了网络上程序到程序的数据传输格式和规则。TCP是面向连接的协议,传输数据之前必须先建立明确连接(三次握手协议)。UDP(用户数据报协议)与TCP协议相似,但它是不可靠的。数据报是一种自带寻址信息的、独立地从数据源走到终点的数据包。但它原创 2017-03-31 23:05:06 · 594 阅读 · 0 评论 -
数组的遍历
public class test { public static void main(String args[]) { System.out.println("普通for循环遍历数组:"); //int arr[] = new int[3]; int arr[] = {1,2,3,4,5}; for (int a = 0; a原创 2017-04-06 22:01:52 · 626 阅读 · 0 评论 -
JAVA中static
static关键字定义静态变量或者静态函数的时候使用该关键字。 被定义为static的函数,可以不需要new一个新的实例对象而直接调用。 比如Math类里有一个,public static sub()方法,那么你可以直接Math.sub()调用该方法。 所谓静态方法和静态变量,程序一启动,便在内存中初始化了。而不需要通过构造函数进行new。原创 2017-04-06 22:17:34 · 355 阅读 · 0 评论 -
二分查找
二分查找是一种典型的采用分治策略的算法,他将问题分解为规模更小的问题,分而治之,逐一解决。 二分查找的两个条件是:顺序存储、数据元素排序。原创 2017-04-06 20:55:26 · 368 阅读 · 0 评论 -
数据库概念以及面试常见问题总结
事物的概念: 事务是单个的工作单元。如果某一个事务提交成功,则在该事物中进行的所有数据修改均会提交成功,并且成为数据库的永久组成部分。如果事物遇到错误并且必须取消和回滚,则所有数据修改均会被清除。left join,right join区别: left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录。 right join :右连接,返回右表中所有的记录以及原创 2017-04-07 20:33:05 · 1935 阅读 · 0 评论 -
偶数大翻转
问题描述: 输入n个数,请将其中的偶数的二进制反转。 eg:输入1 6 5 其中6是偶数,二进制表示为110,反转后为011,代表3,所以最终输出1 3 5. 结题思路: 思路就是先将输入数字中的偶数解析出来,然后再转String,记下当前二进制位数,然后反序右移32-len。import java.util.Scanner;public class Main{ public原创 2017-04-08 14:44:21 · 647 阅读 · 0 评论 -
二维数组中的查找
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。/** * Created by Administrator on 2017/4/8. */public class Solution { public static boolean find(int target,int原创 2017-04-08 15:19:32 · 312 阅读 · 0 评论 -
替换空格
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 //解题思路:遍历字符串找到空格字符串位置,然后用%20替换public class Solution2 { public static String repalceSpace(StringBuffer str){ if原创 2017-04-08 15:41:53 · 351 阅读 · 0 评论 -
JAVA数据库相关
一、数据库访问 JDBC是为Java语言定义的一个SQL调用级的数据库编程接口。数据模型 所有数据库系统都是基于某种数据模型的。数据模型简单的说就是数据库的逻辑结构。关系模型 所谓关系模型,形象地说就是二维表结构,也称之为关系表。 二、JAVA访问数据库的机制 JDBC API可以完成以下主要任务:首先建立和数据源的连接,然后向其传送查询和修改等SQL命令,最后处理数据源返回的SQL执行结果。原创 2017-03-31 23:26:53 · 600 阅读 · 0 评论 -
JAVA多线程相关
一、概念 1、同一个应用程序需要并行处理多件任务,就不必建立多个进程,而是在一个进程之中建立多个线程。2、JAVA创建多线程有两种方法:继承Thread类和实现Runable接口。3、当多个线程的执行代码来自同一个类的run方法时,即称它们共享相同的代码;当共享访问相同的对象时,即他们共享相同的数据。4、后台线程(也叫守护线程)通常是为了辅助其他线程而运行的线程,它不妨碍程序终止。5、JAVA虚拟原创 2017-03-31 23:50:48 · 688 阅读 · 0 评论 -
Java泛型中<T extends Comparable<? super T>>是什么意思
原文地址:Java泛型中。。。啥意思啊<T extends Comparable<? super T>>这里来分析T表示任意字符名,extends对泛型上限进行了限制即T必须是Comparable<? super T>的子类,然后<? super T>表示Comparable<>中的类型下限为T!这样来看一段代码辅助理解:import java.util.GregorianCalendar;cl转载 2017-04-06 21:43:32 · 3471 阅读 · 1 评论