JAVA 面试基础】的更多相关文章

JAVA相关基础知识1.面向对象的特征有哪些方面 ?1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象.2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).…
程序员面试之九阴真经 谈谈final, finally, finalize的区别: final:::修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被声明为 abstract的,又被声明为final的.将变量或方法声明为final,可以保证它们在使用中不被改变.被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改.被声明为final的方法也同样只能使用,不能重载 finally:::再异常处理时提供 fi…
写在前面:这篇文章对于在Java方面已经很牛逼的大手,就没必要看了,因为对于你们来说,这tm简直太简单了.... 面试我们都经历过,你真的懂面试吗?针对面试我只想说一点,面试的目的不是让考官知道你怎么样,而是让你自己清楚自己怎么样.也就是说你会什么.能够做什么!举个例子,如果你去面试Java工程师,你至少要会该职位的职能,而不是只会做面试题! 以下所述不止是面试题还能让你知道自己到底会什么. 基础部分 1.面向对象的三大特性 继承.封装.多态 什么是继承? ①继承是面向对象程序设计能够提高软件开…
面向对象软件开发的优点有哪些? 答:开发模块化,更易维护和修改:代码之间可以复用:增强代码的可靠性.灵活性和可理解性. 多态的定义? 答:多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力.一个多态类型上的操作可以应用到其他类型的值上面. 继承的定义? 答:继承给对象提供了从基类获取字段和方法的能力.继承提供了代码的重用行,也可以在不修改类的情况下给现存的类添加新特性 抽象的定义?抽象和封装的不同点? 答:抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来…
经典的Java基础面试题___________________________________________________________________________________________ 1.问题:Java的”一次编写,处处运行”是如何实现的? 答案:Java程序会被编译成字节码组成的class文件,这些字节码可以运行在任何平台,因此Java是平台独立的. 2.问题:说明一下public static void main(String args[])这段声明里每个关键字的作用…
1.九种基本数据类型的大小以及它们的封装类 java提供的九种基本数据类型:boolean.byte(1).char(2).short(2).int(4).long(8).float(4).double(8).void 以及它们的封装类:Boolean.Byte.Character.Short.Integer.Long.Float.Double.Void 2.switch能用string做参数吗 在java7之后可以使用string做参数 3.equals与==的区别 “==”是对比较的两个对象…
2.1.3 讲一下java中int数据占几个字节 java中有几种基本数据类型? 2.1.4. 面向对象的特征有哪些方面 有四大基本特征:封装.抽象.继承.多态 1)封装,即将对象封装成一个高度自治和相对封闭的个体,对象状态(属性)由这个对象自己的行为(方法)来读取和改变. 张三这个人,他的姓名等属性,要有自己提供的获取和改变的方法来操作,(getter,setter) 2)抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个类只考虑这些事物的相似和共性之处,并且会忽略与当前主题…
最近想深入的理解一下java 的工作机制,也是便于后期的面试. 1.A:HashMap和Hashtable有什么区别? Q:HashMap和Hashtable都实现了Map接口,因此很多特性非常相似.但是,他们有以下不同点:     HashMap允许键和值是null,而Hashtable不允许键或者值是null.    Hashtable是同步的,而HashMap不是.因此,HashMap更适合于单线程环境,而Hashtable适合于多线程环境.   我们再来剖析一下这个问题,如果你答些,面试…
1.Q:ArrayList 和 LinkedList 有什么区别? A:ArrayList查询快!LinkedList增删快.ArrayList是基于索引的数据接口,它的底层是数组.空间占用相对小一些    LinkedList是链表结构,LinkedList比ArrayList更占内存,因为LinkedList为每一个节点存储了两个引用,一个指向前一个元素,一个指向下一个元素.    对于查询速度,ArrayList觉得优于LinkedList,因为LinkedList要移动指针. 对于插入或…
一.Java基础 1. String类为什么是final的. 2. HashMap的源码,实现原理,底层结构. 3. 说说你知道的几个Java集合类:list.set.queue.map实现类咯... 4. 描述一下ArrayList和LinkedList各自实现和区别 5. Java中的队列都有哪些,有什么区别. 6. 反射中,Class.forName和classloader的区别 7. Java7.Java8的新特性(baidu问的,好BT) 8. Java数组和链表两种结构的操作效率,在…
1,作用域,Java只有public,protect,private,默认是default相当于friendly 作用域 当前类          同一package 子类            其它package public  T T T T protect T T T F private T F F F default T T F F 值得注意的是默认default,同一个package下的其它类可以访问,当如果是子类就不可以访问. 2,String String str = new St…
1.switch能否作用在byte.int.long.String? 答案:switch能作用在byte.int.enum常量, 补充:jdk7可以作用在String上 2.short s = 1; s = s + 1;有什么错? short s = 1; s += 1;有什么错? 答案: s = s + 1; 在计算右边的表达式时,隐式的将s转换为int,将一个int类型赋值给short出错,必须强制转换,即: s = (short)(s+1); 而s+=1; 编译器会首先将+=后面的1强制转…
1.基本数据类型.封装类和运算操作(1)简述 & 和 && ,以及 | 和 || 的区别.———&和|是位运算符也是逻辑运算符,作为逻辑运算符时左右两边都会进行判断(不会出现短路):而&&和 || 也是逻辑运算符(存在短路现象:即当左边满足条件时,右边不会再执行,所以也叫短路与.短路或),一般用在if.while.for等条件判断里. (2)运行 short s1 = 1; s1 = s1 + 1; 会出现什么结果?错! s1 + 1,s1是short类型,…
1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致.   2.说说&和&&的区别. &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false. &&还具有短路的功能,即如果第一个表达式为false,…
1.final, finally, finalize的区别 final:修饰符(关键字)如果一个类被声明为final,没有子类也不能被继承.因此一个类不能既被声明为 abstract的,又被声明为final的.将变量或方法声明为final,可以保证它们在使用中不被改变.被声明为final的变量必须在声明时给定初值,而在以后不可修改.被声明为final的方法也同样只能使用,不能重载 finally:再异常处理时提供 finally 块来执行任何清除操作.如果抛出一个异常,那么相匹配的 catch…
Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类. sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep. ② 锁: 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法. sleep不出让系统资源:wait是进入线程等待池等待,出让系统资源,其他线程可以占用CPU.一…
4.指出下面程序的运行结果. class A { static { System.out.print("1"); } public A() { System.out.print("2"); } } class B extends A{ static { System.out.print("a"); } public B() { System.out.print("b"); } } public class Hello { pu…
划重点!!!! 1.抽象类(abstract class)和接口(interface)有什么异同? 相同点 * 都不能被直接实例化,都可以通过继承实现其抽象方法. * 都是面向抽象编程的技术基础,实现了诸多的设计模式. 不同点 * 接口支持多继承:抽象类不能实现多继承. * 接口其中的抽象方法全部进行实现 * 接口只能定义抽象规则:抽象类既可以定义规则,还可能提供已实现的成员. * 接口是一组行为规范:抽象类是一个不完全的类,着重族的概念. * 抽象类未必要有抽象方法. * 接口只包含方法.属性…
1.动态绑定是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法. 2.在将超类转换为子类之前,应该使用instanceof进行检查. 3.包含一个或者多个抽象方法的类本身必须被声明为抽象的. 4.能够分析类能力的程序被称为反射(reflective). 5.clone方法是Object类的一个protected方法,如果在对象中包含了子对象的引用,拷贝的结果会使得两个域引用同一个子对象,因此原始对象与克隆对象将共享这部分信息,默认的克隆操作是浅拷贝,并没有克隆包含在对象中的…
1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致. 2.Java有没有goto? java中的保留字,现在没有在java中使用. 3.说说&和&&的区别. &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false…
上一篇,我们说了一下线程和Map,或许那些太抽象,不太好理解,也不太方便记忆,我们这次说一些简单的. 1.Q:java的基本数据类型有哪些? A:四种整数类型(byte.short.int.long) byte:8 位,用于表示最小数据单位,如文件中数据,-128~127 short:16 位,很少用  -32768 ~ 32767 int:32 位.最常用,-2^31-1~2^31  (21 亿) long:64 位.次常用,long 型数据后面加 L或 l 两种浮点类型(float,doub…
0.日常命令 cd 目录路径: 跳转到指定目录 mkdir 目录名称:新增目录 pwd: 获取当前路径 su: 切换用户 ll: 查看当前目录侠的文件和目录 rm -rf 目录: 递归删除指定目录下的所有文件 vi 文件:修改文件 mv 源文件夹名 新文件夹名:移动文件夹到指定目录 grep:查找想要的信息 cp -r 源目录名 新目录名:拷贝指定目录中的文件到新目录中 touch 文件名:创建文件 find -name 文件名:查找文件 ls -ahl:查看文件的所有者 chkconfig -…
1.什么是Docker? Docker是一个容器化平台,它以容器的形式将您的应用程序及其所有依赖项打包在一起,以确保您的应用程序在任何环境中无缝运行. 2.什么是Docker镜像? Docker镜像是Docker容器的源代码.换句话说,Docker镜像用于创建容器.使用build命令创建镜像,并且在使用run启动时它们将生成容器.镜像存储在Docker注册表中,registry.hub.docker.com因为它们可能变得非常大,镜像被设计为由其他镜像层组成,允许在通过网络传输镜像时发送最少量的…
Java中的原始数据类型都有哪些,它们的大小及对应的封装类是什么? byte——1 byte——Byte short——2 bytes——Short int——4 bytes——Integer long——8 bytes——Long float——4 bytes——Float double——8 bytes——Double char——2 bytes——Character boolean——————Boolean boolean数据类型非true即false. 这个数据类型表示1 bit,但是它…
转:http://blog.csdn.net/wenwen360360/article/details/54969418 Application ―Java应用程序”是可以独立运行的Java程序.由Java解释器控制执行. Applet ―Java小程序”不能独立运行(嵌入到Web页中).  由Java兼容浏览器控制执行. Serverlets 是Java技术对CGI 编程的解决方案.是运行于Web server上的.作为来自于Web browser 或其他HTTP client端的请求和在se…
题目:给定字符串,求出现次数最多的那个字母及次数,如有多个 重复则都输出. eg,String data ="aaavzadfsdfsdhshdWashfasdf": 思路: 1.引入TreeSet,通过集合快速找到所有出现的字符串: 2,引入ArrayList:为了快速排序,再通过StringBuffer生成排序后的字符串: 3,通过String api中的基本方法 indeOf() lastIndexOf()来计算TreeSet中每个字符串的最大值: 4,如果出现相同的则把相同的都…
借鉴地址:http://blog.csdn.net/speedme/article/details/22398395 几句喜欢的话,拷贝下来: 世间上本来没有集合,(只有数组参考C语言)但有人想要,所以有了集合 有人想有可以自动扩展的数组,所以有了List 有的人想有没有重复的数组,所以有了set 有人想有自动排序的组数,所以有了TreeSet,TreeList,Tree** 相同点: 1.List,Set,Map将持有对象一律视为Object型别. 2.Collection.List.Set.…
1.实现多线程的三种方法 1.继成Thread 类,覆盖run()方法即可 2.implements Runnable接口 3.implements Callale接口,执行时通过FutureTask来启动线程 2.线程同步的方法 synchronized.lock 3.ThreadLocal 当使用ThreadLocal维护一个变量时,ThreadLocal会为每一个使用该线程的变量提供独立的变量副本,使每一个线程都可以独立的操作自己的变量副本. ThreadLocal<T>有四个方法: v…
(1)修饰类:表示该类不能被继承: (2)修饰方法:表示方法不能被重写: (3)修饰变量:表示变量只能一次赋值以后值不能被修改(常量).…
在jdk1.5的环境下,有如下4条语句: 1 2 3 4 Integer i01 = 59; int i02 = 59; Integer i03 =Integer.valueOf(59); Integer i04 = new Integer(59). 以下输出结果为false的是: 正确答案: C System.out.println(i01== i02); System.out.println(i01== i03); System.out.println(i03== i04); System.…