Java经典面试笔试题及答案

合集下载

JAVA程序员笔试面试题汇总及答案

JAVA程序员笔试面试题汇总及答案

1. 【基础题】请描述访问控制符的各自作用域与区别答:√√√√√√√√√一、名词解释二、问答题1. 【中等题】请说出ArrayList和Vector的区别答:主要从二方面来说.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的二.数据增长:当需要增长时,Vector 默认增长为原来一培,而ArrayList却是原来的一半2. 【中等题】请说出HashMap和Hashtable的区别答:HashMap与HashT able主要从三方面来说。

一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的三.值:只有HashMap可以让你将空值作为一个表的条目的key或value3. 【基础题】Collection 和Collections的区别答:Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。

Collection是个java.util下的接口,它是各种集合结构的父接口第十八章输入输出笔试题一、填空题1. 【基础题】File对象的isFile()方法作用是判断是否是文件,getAbsolutePath() 方法作用是获取文件或目录的绝对路径。

2. 【基础题】BufferedReader和BufferedWriter以字符流的方式读写文本文件,且效率更高。

3. 【基础题】FileInputStream和FileOutputStream以字节流的方式读写文本文件。

二、选择题1. 【基础题】下列哪个类是实体类(BC )A. InputStreamB. PrintStreamC. SocketD. ReaderE. DataInput2. 【提高题】请选择下列程序的运行结果(A)public class TestIOapp{public static void main(String [] args) throws IOException{StringReader stingin = new StringReader("test");LineNumberReader in = new LineNumberReader(stingin);PrintWriter out = new PrintWriter(System.out);out.println(in.readLine());out.flush();}}A. testB. test:1C. 1:testD. 1 test3. 【提高题】请选择下列程序的运行结果( B )public class TestIOapp{public static void main(String [] args) throws IOException{RandomAccessFile file = new RandomAccessFile("test.txt","rw");file.writeBoolean(true);file.writeInt(123456);file.writeInt(7890);file.writeLong(1000000);file.writeInt(777);file.writeFloat(.0001f);file.seek(5);System.out.println(file.readInt());}}A. 123456B. 7890C. 1000000D. 777E. 0001三、名词解释四、问答题1. 【中等题】请说出java.io.reader和java.io.inputstream的区别答:java.io.Reader 和java.io.InputStream 组成了Java 输入类。

正式应聘的JAVA笔试题和答案

正式应聘的JAVA笔试题和答案

正式应聘的JAVA笔试题和答案一:选择题1:List, Set, Map是否继承自Collection接口A:都是,B 都不是 C:List, Set 是 D:Set, Map 是正确答案 C2:下面描述哪个是正确的A:构造器Constructor可被overrideB:可以继承String类C:try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code不会被执行D:两个对象值相同(x.equals(y) == true),那么也有相同的hash code正确答案 D3 abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized A:都能 B:都不能 C:可以为static D:可以为native正确答案 A4:下面的程序中,temp的最终值是什么?long temo=(int)3.9;temp%=2;A: 0 B :1 C :2 D : 3正确答案 B5、请在以下选项中选出非基本数据类型的选项 ( )A: int B:byte C: boolean D:String正确答案 D6、阅读下面代码段, 给出以下代码的输出结果public class Test{public static void main(String args[]){String str1 = "abc";String str = "abc;String str2 = new String("abc");System.out.println(str1 == str2);System.out.println(str1.equals(str2));System.out.println(str == str1);}}A:true,true,true B:true,false,true C:true,true,false D:false,true,true正确答案 D7、阅读下面代码段, 给出以下代码的输出结果:int i=1;switch (i) {case 0:System.out.println("zero");break;case 1:System.out.println("one");case 2:System.out.println("two");default:System.out.println("default");}A: B::D:default 正确答案 C8、阅读下面代码段, 给出以下代码的输出结果public class MyClass{static int i;public static void main(String argv[]){System.out.println(i);}}A: Error Variable i may not have been initialized B:null C:D:0 正确答案 D9、阅读下面代码段, 给出以下代码的输出结果:class A{static{System.out.print( “A1”);}public A(){System.out.print( “A2”);}}class B extends A{static{System.out.print( “B1”);}public B(){System.out.print( “B2”);}}public class Hello{public static void main(String[] args){A ab = new B();ab = new B();}}A:A1B1A2B2B1B2 B:A1B1A2B2A2B2 C:A1B1A2B2B1B2 D:A1A2B1B2A2B2正确答案 B10、阅读下面代码段, 给出以下代码的输出结果public class TestData {public String getValue () {String value = "";try{value = "test1";return value;}catch(Exception e){e.printStackTrace();}finally{value = "test2";}return value;}public static void main(String args[]){ TestData test = new TestData();String a = test.getValue();System.out.println(a);}}A.test1B.test2C.nullD.””正确答案 A二、改错题,如果有错误,请指出并修正。

java面试题库java面试题目及答案(3篇)

java面试题库java面试题目及答案(3篇)

第1篇一、基础知识1. Java简介题目:请简述Java的基本特点。

答案:- 简单易学:Java设计之初就考虑了易学性,使用面向对象编程。

- 原生跨平台:Java通过JVM(Java虚拟机)实现跨平台运行。

- 安全性:Java提供了强大的安全机制,如沙箱安全模型。

- 体系结构中立:Java不依赖于特定的硬件或操作系统。

- 高效:Java的运行速度接近C/C++。

- 多线程:Java内置多线程支持,便于实现并发处理。

- 动态性:Java在运行时可以进行扩展和修改。

2. Java虚拟机题目:请解释Java虚拟机(JVM)的作用。

答案:JVM是Java程序的运行环境,其主要作用包括:- 将Java字节码转换为本地机器码。

- 管理内存,包括堆、栈、方法区等。

- 提供垃圾回收机制。

- 管理线程和同步。

3. Java内存模型题目:请简述Java内存模型的组成。

答案:Java内存模型主要由以下部分组成:- 堆(Heap):存储对象实例和数组。

- 栈(Stack):存储局部变量和方法调用。

- 方法区(Method Area):存储类信息、常量、静态变量等。

- 本地方法栈(Native Method Stack):存储本地方法调用的相关数据。

- 程序计数器(Program Counter Register):存储线程的当前指令地址。

4. Java关键字题目:请列举并解释Java中的几个关键字。

答案:- `public`:表示访问权限为公开。

- `private`:表示访问权限为私有。

- `protected`:表示访问权限为受保护。

- `static`:表示属于类本身,而非对象实例。

- `final`:表示常量或方法不能被修改。

- `synchronized`:表示线程同步。

- `transient`:表示数据在序列化时不会被持久化。

二、面向对象编程5. 类和对象题目:请解释类和对象之间的关系。

答案:类是对象的模板,对象是类的实例。

(完整版)华为java笔试面试题

(完整版)华为java笔试面试题

华为Java笔试题+数据库题一、单项选择题 1.Java是从( B)语言改进重新设计。

A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确(B ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 3.下列说法正确的有(C ) A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 4.提供Java存取数据库能力的包是( A) A.java.sql B.java.awt C.ng D.java.swing 5.下列运算符合法的是( A) A.&& B.<> C.if D.:= 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是(C ) A.0 B.1 C.-1 D.死循环 7.下列哪一种叙述是正确的( D) A. abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 8.下列语句正确的是( C) A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 9.下列哪种说法是正确的(A ) A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 二、多项选择题 1.Java程序的种类有(BCD ) A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( BCD) A.环境变量可在编译source code时指定 D. javac.exe能指定编译结果要置于哪个目录(directory) 3.下列标识符不合法的有( ACD) A.new B.$Usdollars C.1234 D.car.taxi 4.下列说法错误的有(BCD) A.数组是一种对象 B.数组属于一种原生类 C. int number=[]={31,23,33,43,35,63} D.数组的大小可以任意改变 5.不能用来修饰interface的有(ACD ) A.private B.public C.protected D.static 6.下列正确的有(ACD ) A. call by value不会改变实际参数的数值 B. call by reference能改变实际参数的参考地址 C. call by reference不能改变实际参数的参考地址 D. call by reference能改变实际参数的内容 7.下列说法错误的有( ACD) A.在类方法中可用this来调用本类的类方法 B.在类方法中调用本类的类方法时可直接调用 C.在类方法中只能调用本类中的类方法 D.在类方法中绝对不能调用实例方法 8.下列说法错误的有(ABC ) A. Java面向对象语言容许单独的过程与函数存在 B. Java面向对象语言容许单独的方法存在 C. Java语言中的方法属于类中的成员(member) D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同 9.下列说法错误的有(BCD ) A.能被java.exe成功运行的java class文件必须有main()方法 B. J2SDK就是Java API C. Appletviewer.exe可利用jar选项运行.jar文件 D.能被Appletviewer成功运行的java class文件必须有main()方法 三、判断题 1.Java程序中的起始类名称必须与存放该类的文件名相同。

2024java常用笔试题

2024java常用笔试题

1、在Java中,以下哪个关键字用于声明一个类?A. classB. interfaceC. enumD. abstract(答案:A)2、以下哪个是Java中的正确注释方式?A. // 这是一个注释B. /* 这是一个注释/C. /==* 这是一个注释**==/D. # 这是一个注释(答案:A、B)3、在Java中,String类的哪个方法用于比较两个字符串的内容是否相同?A. ==B. equals()C. compareTo()D. equalsIgnoreCase()(答案:B)4、以下哪个是Java中的正确循环结构?A. for (int i = 0; i < 10; i++) {}B. while (i < 10) {}C. do {} until (i < 10);D. loop (i < 10) {}(答案:A)5、在Java中,异常处理是通过哪几个关键字来实现的?A. try, catchB. throw, throwsC. finallyD. A和B和C(答案:D)6、以下哪个是Java中的正确数组声明方式?A. int[] array = new int;B. int array;C. int[] array = {1, 2, 3, 4, 5};D. int array[] = new int();(答案:A、C)7、在Java中,以下哪个类是所有类的父类?A. ObjectB. StringC. SystemD. Class(答案:A)8、以下哪个是Java中用于实现线程的关键字或接口?A. ThreadB. RunnableC. SynchronizedD. Volatile(答案:A、B)。

Java笔试题以及答案

Java笔试题以及答案

Java面试题以及答案1.J2EE是什么?答:Je22是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型(enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。

所属层次包括客户层(clietn tier)组件,web层和组件,Business 层和组件,企业信息系统(EIS)层。

2.J2EE是技术还是平台还是框架?答:J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。

J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。

3.MVC的各个部分都有那些技术来实现?如何实现?答:MVC是Model-View-Controller的简写。

"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB 组件实现),"V iew" 是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。

这些组件可以进行交互和重用。

6.C/S 与B/S 区别:答:有如下八个方面的不同:(1)硬件环境不同: (2)对安全要求不同(3)对程序架构不同(4)软件重用不同(5)系统维护不同(6)处理问题不同(7)用户接口不同(8)信息流不同7.什么是JNDI答:(Java Naming & Directory Interface)JA V A命名目录服务。

主要提供的功能是:提供一个目录系统,让其它各地的应用程序在其上面留下自己的索引,从而满足快速查找和定位分布式应用程序的功能。

8.什么是JMS答:(Java Message Service)JA V A消息服务。

java笔试题以及答案详解

java笔试题以及答案详解

java笔试题以及答案详解一一、单项选择题1.Java是从()语言改进重新设计。

A.Ada B.C++ C.Pasacal D.BASIC答案:B2.下列语句哪一个正确()A.Java程序经编译后会产生machine codeB.Java程序经编译后会产生byte codeC.Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有()A.class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。

4.提供Java存取数据库能力的包是()A.java.sql B.java.awt C.ng D.java.swing 答案:A5.下列运算符合法的是()A.&& B.<> C.if D.:=答案:A详解:6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()A.0 B.1 C.-1 D.死循环答案:C详解:7.下列哪一种叙述是正确的()A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D详解:8.下列语句正确的是()A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A详解:9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有()A.类(Class)B.Applet C.Application D.ServletJava程序的种类有:1、内嵌于web文件中,由浏览器来观看的Applet2、可独立运行的Application3、服务器端的Servlet2.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括class pathC.javac一次可同时编译数个Java源文件D.javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD3.下列标识符不合法的有()A.new B.$Usdollars C.1234 D.car.taxi答案:ACD解释:4.下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C.int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变答案:BCD解释:5.不能用来修饰interface的有()A.private B.public C.protected D.static答案:ACD解释:6.下列正确的有()A.call by value不会改变实际参数的数值B.call by reference能改变实际参数的参考地址C.call by reference不能改变实际参数的参考地址D.call by reference能改变实际参数的内容答案:ACD7.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:CD解释:8.下列说法错误的有()A.Java面向对象语言容许单独的过程与函数存在B.Java面向对象语言容许单独的方法存在C.Java语言中的方法属于类中的成员(member)D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC解释:9.下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B.J2SDK就是Java APIC.Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法答案:BCD解释:三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。

Java经典面试题及答案(200题)

Java经典面试题及答案(200题)

Java经典面试题及答案(200题) Java经典面试题200道Java 基础1. JDK 和 JRE 有什么区别?JDK:Java Development Kit 的简称,Java 开发工具包,提供了Java 的开发环境和运行环境。

JRE:Java Runtime Environment 的简称,Java 运行环境,为 Java 的运行提供了所需环境。

具体来说 JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器 Javac,还包含了很多 Java 程序调试和分析的工具。

简单来说:如果你需要运行 Java 程序,只需安装 JRE 就可以了,如果你需要编写 Java 程序,需要安装 JDK。

2. == 和 equals 的区别是什么?「== 解读」对于基本类型和引用类型 == 的作用效果是不同的,如下所示:基本类型:比较的是值是否相同;引用类型:比较的是引用是否相同;代码示例:String x = "string";String y = "string";String z = new String("string");System.out.println(x==y); // trueSystem.out.println(x==z); // falseSystem.out.println(x.equals(y)); // trueSystem.out.println(x.equals(z)); // true代码解读:因为 x 和 y 指向的是同一个引用,所以 == 也是 true,而 new String()方法则重写开辟了内存空间,所以 == 结果为 false,而 equals 比较的一直是值,所以结果都为 true。

「equals 解读」equals 本质上就是 ==,只不过 String 和 Integer 等重写了equals 方法,把它变成了值比较。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.什么是对象序列化,为什么要使用?所谓对象序列化就是把一个对象以二进制流的方式保存到硬盘上。

好处:方便远程调用。

2.值传递与引用传递的区别?所谓值传递就是把一个对象的值传给一个新的变量,但是系统会给这个新的变量开辟一个新的内存空间。

不会改变原有的值所谓引用传递就是把一个对象在堆中保存的数据传递给一个变量,此时新的变量与原有的变量对应同一个内存存储空间,当新的变量修改对象的属性时,内存中的数据也会修改。

3.接口与抽象类的区别?1:接口里面不可以实现方法体,抽象类可以实现方法体。

2:接口可以多继承接口,抽象类不可以。

3:接口需要被子类实现,抽象类是要被子类继承(单一继承)。

4:接口中只能有公有的方法和属性而且必须赋初始值,抽象类中可以有私有方法和属性.5: 接口中不能存在静态方法,但属性可以和final,抽象类中方法中可以有静态方法,属性也可以。

4.谈谈继承,为什么要使用继承?所谓继承就是找出几个类中共同的部分,提取出来作为父类。

而子类只需要继承父类,就可以共享父类的方法。

使用继承能够减少重复的代码。

5.方法重载的好处?所谓重载就是在一个类中可以定义多个相同的方法,但是方法的参数类型和参数的个数以及顺序要不同。

重载的好处就是能够让我们很快的掌握该方法的功能,我们只要要记住该方法就能很快的理解该方法的参数以及参数的作用6.项目中印象最深的部分?我觉得在该项目中我体现到了反射技术的强大之处,原来我一直不清楚反射是一种什么样的技术,只知道一些概念上的知识,经过这个项目之后,终于知道该怎样灵活运用反射,以及在什么时候运用。

谈谈你对面向对象的理解与认识?我觉得使用面向对象这种思维的方式比较符合我们人类的思想,不需要去学习一些什么新的思考方式,就按照现实生活做的一些故事就能让人理解该内容的知识以及他们的作用。

我的看法就是:1:当加入新的功能的时候不会修改原有的代码。

(面向接口编程) 2: 当我们写的一个类可以重复的运用在其他项目中。

(代码的复用性)3:当写一个新类的时候要考虑到他的可扩展性。

(灵活性)7.谈谈集合框架?集合框架分为三部分,第一部分是collection接口,第二部分是Map接口、第三部分是collections帮助类首先说一下collection接口,collection接口下面的接口分为set 接口、list接口,在往下面就是他们一些实现类。

说到实现类在分为两部分,第一部分是set的实现类有TreeSet、HashSet,第二部分是list的实现类有:Arraylist、LinkedList、Vector。

8.再说Map接口,map接口下面有treeMap、HashMap、HashTable 三个实现类。

最后说collections帮助类,collections提供了一系列静态方法实现对各种集合的搜索、排序、线程完全化等操作。

9.什么是异常?描述下异常处理?所谓异常就在执行程序的时发生的错误,他能终止正在执行的程序。

异常的处理:1:使用try-catch捕获异常。

2:使用throw-throws抛出异常。

10.多线程的优先级?为什么要分优先级?因为有有一些线程可能比较重要,所以才划分优先级。

异常框架的类结构?Throwable所有错误的超类,他下面有两个子类:error和Exception。

error代表系统级的错误能捕获,但是不能处理。

Exception代表异常主要出自于程序,可以捕获也能处理。

Exception有分为两类:编译期异常、运行期异常。

区别他是运行期异常还是编译期异常就看他是不是RuntimeException的子类,如果是的话,就是运行期异常否则是编译期异常。

谈谈HashMap与Hashtable的区别。

HashMap:hashmap中可以有空值,线程不安全的类。

hashmap的父类是abstractMap抽象类(效率高)HashTable:hashtable中不允许有空值,线程安全的类.hashtable的父类是Dictionary类(效率低)说一下iterator。

iterator是一个接口,用于实现对容器里面的元素遍历操作。

任何的遍历都可以使用iterator。

什么是泛型?它有什么样的好处?泛型就是自己指定一种类型,以后存放的东西就只能有这一种类型。

泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。

说一下你在项目中遇到的异常,并说出什么时候发生的,怎么解决的。

空指针异常最常见。

根据异常提示找到相应的类进行处理。

发生的原因很多,比如没有初始化变量,没有进行赋值等都是空指针所包含的。

你的程序遇到错时怎么解决的?根据错误提示找到错误的API进行相应的处理。

谈谈&&和&的区别&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。

System.out和System.in是什么意思?System.out是输出。

System.in是输入java为什么能够跨平台?对于不同的系统平台有不同的虚拟机,虚拟机提供了硬件平台规范。

用java开发的程序被编译成由java虚拟机指令组成的字节代码,虚拟机会将这些指令翻译成操作系统特定的指令.(因为jvm屏蔽了底层操作系统的硬件)。

private变量能不能被其他类访问?如果能,怎么访问?能。

通过反射. getDeclaredField_r();演示java项目如何打包成jar文件1:选择导出jar 直到输出java的环境变量如何配置?为什么要配置?1:在我的电脑属性高级环境变量系统变量新建变量名java-Home,设置值:java的JDK目录2:在选择新建设置变量名PATH 变量值%java_home%/bin目录为了方便在dos窗口操作。

static和非static修饰的变量哪个生命周期长?static的生命周期长。

因为他一直在内存里面。

什么是线程同步?线程同步就是说在同一时间访问的资源的时候,资源只能被一个线程所使用.什么是封装?封装的好处是什么?封装:封装就是把一个已经实现好的功能的代码,放在一个方法中(实现了隐藏)。

好处:代码的重用性、好全性、只需要调用该方法不管具体的实现在线程中wait与sleep的区别?1:wait是Object定义的方法,而sleep是线程Thread定义的方法。

2:sleep是让当前线程睡泯,所以可以放在任何位置,而wait是让当前线程放弃资源的使用权,必须放在同步块或同步方法里面。

3:sleep他不会释放对象锁,而wait会释放对象同步锁.4:sleep是等待一段时间后会自动醒来,而wait必须让其他的线程唤醒。

Class 和class的区别class是java的关键字。

Class是类的名字。

awt和swing的区别?awt是重量级的组件。

swing是轻量级的组件.比如:(在swing组件中当我们调用repaint()方法时,会很快调用paint(),而对于重量级组件会首先调用upate()方法,然后upate()方法再调用paint()方法,在重量级组件中实现双缓冲,我们就要重写upate()方法,在重写的时候记得实现帅新屏幕).为什么实现一个接口必须要实现接口里面所有的方法?因为这是sun公司的规定。

如果不实现它里面所有的方法那就不叫接线程和进程的区别是什么?进程是一个小的应用程序,需要分配内存空间。

线程是进程中的一个顺序控制流,也可以这样理解(线程是进程的实体).Java基础技能中强调程序代码的读写能力,如果一个类很长,你会怎样读写?1:类分解,每个类只做他该做的事情。

2:方法分解。

抽象方法能不能是private和static修饰符?能。

用接口有什么好处?1:使用接口有很好的扩展性。

2:接口可以多继承接口。

3:隐藏实现。

什么是反射?所谓反射就是在编译的时候不知道加载什么,只有等到运行的时候才知道该执行什么。

创建对象的方式有哪些?1:new 2:反射3:clone 4:反序列化transient是什么意思?transient代表无法到达某一对象所抛出的异常。

但也不代表没有该对在设计类的时候,你是怎么使用静态变量和成员变量的?如果需要一直存在于内存当中,就选择静态变量否则就选择成员变量。

定义抽象方法的意义何在?1:为了减少重复代码。

2:抽象方法有很好的扩展性。

谈集合遍历的方式forEach()、for()、iteratorjava安全性体现在什么地方? 1:Java提供一个用于网络/分布式的计算环境。

因此,Java强调安全性,如确保无病毒、小应用程序运行安全控制等等。

2:Java的验证技术是以公钥(public-key)加密算法为基础,而且从环境变量、类加载器、文件系统、网络资源和名字空间等方面实施安全策略。

谈谈线程所拥有的几种状态就绪:线程分配了CPU以外的全部资源,等待获得CPU调度执行:线程获得CPU,正在执行阻塞:线程由于发生I/O或者其他的操作导致无法继续执行,就放弃处理机,转入线程就绪队列挂起:由于终端请求,操作系统的要求等原因,导致挂起。

面向对象的特征有哪些?封装、继承、多态解释一下在项目里你怎么去实现多线程的。

1:一般是实现Runnable接口,new Thread().start(); 重写run();启动线程时可以调用run()方法吗?可以.因为run方法里面执行的代码就是线程所要执行的方法.Java程序的执行过程是怎样的?java源程序编译.class字节码类加载器字节码校验器解释执行Java的引用数据类型有哪些?对象、集合、数组、接口变量按作用域分类分为几种?分为两种。

局部变量和全局变量.集合里的接口有哪些?请你创建一个List类的实例。

Collection接口、set接口、list接口、map接口、iterator接口List list = new ArrayList();int与Integer的区别?int是原始数据类型,integer是int的包装类,他提供转换类型的很多方法。

checked异常与unchecked异常的区别是什么?区分他们的区别主要是看他们是不是runtime的子类,如果是runtime 的子类那么就是运行期异常,否则是编译期异常。

final与finally、finalize的区别?final用于声明属性、方法和类,分别表示属性不可更改,方法不可重写,类不可以继承。

finally是异常处理语句结构的一部分,他表示总是执行。

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。

重写与重载的区别?参数一样,返回类型不一样是重载吗?重载:方法名相同,参数类型不同,参数个数不同,参数顺序不同。

相关文档
最新文档