1.Java容器框架有哪些?

Java容器框架中有两个名称分别为Collection和Set的接口

2.list,map,set,array,它们有什么区别

List接口主要有三个实现类:LinkedList,ArrayList,Vector.

LinkedList:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址

ArrayList和Vector的区别:ArrayList是非线程安全的,效率高;Vector是基于线程安全的,效率低。

1)Set接口主要有两个实现类:HashSet(底层由HashMap实现)和LinkedHashSet

2)Map接口主要实现类:HashMap,HashTable和LinkedHashMap

HashMap非线程安全,高效,支持NULL;HashTable线程安全,低效,不支持NULL

Array:数组,可以存储对象和基本数据类型,长度固定。

List:元素有序,可重复.

Set:元素无序,不重复,无索引。

Map:双列集合,用于存放键值对。键值是唯一的,不可重复。

3.collection与collections有什么不同

a.javutil.Collection是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。

b.java.util.Collections是一个包装类。它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,服务于Java的Collection框架。

4.string,stringbuilder,stringbuffer有什么区别

程序中用到的字符串可以分为两大类:一类是创建之后不会再做修改和变动的字符串变量;另一种是创建之后允许再做修改的字符串变量。对于前一种字符串变量,由于程序中经常需要对它做比较、搜索之类的操作,所以通常把它放在一个具有一定名称的对象之中,由于程序完成对该对象的上述操作,在Java程序中存放这种字符串变量是String类变量;对于后一种字符串变量,由于程序中经常需要对它做添加、插入、修改之类的操作,所以这种字符串变量一般都存放在StringBuilder类的对象之中。

String 字符串变量

StringBuffer字符串变量(线程安全),

StringBuilder字符串变量(非线程安全)

5==与equals有什么区别

程序中比较两个字符时,使用关系运算符”==”,而比较两个字符串时,则需使用equals()方法。

6.&和&&的区别

&&是简洁运算符,&是非简洁运算符。简洁运算符(&&,||)与非简洁运算符(&,|)的区别在于:非简洁运算在必须计算完左右两个表达式之后,才取结果值;而简洁表达式可能只计算左边的表达式而不计算右边的表达式,即对于表达式&&,只要左边表达式为false,就不计算右边表达式,则整个表达式为false;对于||,只要左边表达式为true,就不计算右边表达式,则整个表达式为true.

7.程序,进程和线程的区别

1)程序是含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。

2)进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个程序从创建、运行到消亡的过程。简单地说,一个进程就是一个执行中地程序,它在计算机中一个指令接着一个指令地执行,同时,每个进程还占有某些系统资源,如CPU时间、内存空间、文件、输入输出设备地使用权等等。

3)线程:其实与进程相似,也是一个执行中地程序,但是线程是一个比进程更小地执行单位。一个进程在执行过程中可以产生多个线程,形成多条执行执行路径。但是与进程不同的是,同类的多个线程共享同一块内存空间和一组系统资源,所以系统在产生一个线程,或是在各个线程之间作切换的工作时,负担要比进程小得多,也正因为如此,也正因为如此,线程也被称为轻量级进程。

8.线程有哪几种状态?

新建状态、就绪状态、运行状态、阻塞状态、消亡状态这五种状态

9.线程的互斥与同步的区别

互斥是指两个或多个线程不能同时运行,而同步则是两个或多个线程的运行有先后次序的约束。

10.线程的同步与共享数据的区别?

共享是指线程之间对内存数据的共享,因为线程共同拥有对内存空间中数据的处理权力,这样会导致因为多个线程同时处理数据而使数据出现不一致,所以提出同步解决此问题,即同步是在共享的基础上,是针对多个线程共享会导致数据不一致而提出来的。

同步指的是处理数据的线程不能处理其他线程当前还没处理完的数据,但是可以处理其他数据。

11.线程同步与异步区别

线程同步是多个线程同时访问同一资源,等待资源访问结束,浪费时间,效率低;线程同步:访问资源时在空闲等待时同时访问其他资源,实现多线程机制。

12.Java中四舍五入有哪些方法?

Math类中提供了三个与取整有关的方法:ceil,floor,round,这些方法的作用于它们的英文名称的含义相对应,例如:ceil的英文意义是天花板,该方法就表示向上取整,Math.ceil(11.3)的结果为12,Math.ceil(-11.6)的结果为-11;floor的英文是地板,该方法就表示向下取整,Math.floor(11.6)的结果是11,Math.floor(-11.4)的结果-12;最难掌握的是round方法,他表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果是12,Math.round(-11.5)的结果-11.

Math.round( )符合这样的规律:小数点后大于5全部加,等于5正数加,小于5全不加。

13.MVC分别指的是什么?

M - model 模型层,通常我们写的类放在模型层
V - View 是视图层 ,一般就说 jsp页面
C - control 控制层,包括action,service,dao,处理相关业务逻辑

14.类与对象的区别?

类是对某一类事物的描述,是抽象的、概念上的定义;而对象则是实际存在的属该类事物的具体的个体,因而也称是实例。

15Final的用法?

a.将一个类声明为最终类即非继承类,表示它不能其他类所继承。

b.最终修饰符。指定此变量的值不能改变。

c.最终修饰符。指定该方法不能被重载。

15Abstact的用法

a.将一个类声明为抽象类,没有实现方法,需要子类提供方法的实现,所以不能创建该类的实例。

b.抽象修饰符。指定该方法只声明方法头,而没有方法体,抽象方法需在子类中被实现。

16.Static的用法

a.静态修饰符。指定该变量被所有对象共享,即所有的实例都可使用该变量。

b.最终修饰符。指定不需要实例化一个对象就可以调用的方法。

16.成员变量和局部变量的区别

类中定义的变量是成员变量,而方法中定义的变量是局部变量。

区别:

a.从语法形式上看,成员变量是属于类的,而局部变量是在方法中定义的变量或是方法的参数;成员变量可以被public、private、static等修饰符修饰,而局部变量则不能被访问控制修饰符及static所修饰;成员变量和局部变量都可以被final所修饰。

b.从变量在内存中的存储方式上看,成员变量是对象的一部分,而对象是存在于堆内存的,而局部变量是存在于栈内存的。

c.从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对象的创建而存在,而局部变量随着方法的调用而产生,随着方法调用的结果而自动消失。

d.成员变量如果没有被赋初值,则会自动以类型的默认值赋值(有一种情况例外,被final修饰但没有被static修饰的成员变量必须显式地赋值);而局部变量则不会自动赋值,必须显式地赋值后才能使用。

java实习生面试题相关推荐

  1. 阿里2020春招Java实习生笔试题

    阿里2020春招Java实习生笔试题 第1题 第2题 今天上午参加了阿里实习笔试,2个编程题(60分钟),做的简直是惨不忍睹,一个都没出来.虽然和面试无缘了,但希望能帮到后面笔试的同学,所以将题目大概 ...

  2. java实习生面试题_java实习生面试题(含答案)

    1.Java容器框架有哪些? Java容器框架中有两个名称分别为Collection和Set的接口 2.list,map,set,array,它们有什么区别 (推荐学习:java实习生面试题) Lis ...

  3. Java实习生面试题汇总

    Java实习生面试题汇总 简介 本人是二本大三学生,下半年大四.暑假在上海这边找实习工作,面了几家公司,所问到的问题记录在下面. 因为是在校生,没任何实习经历,一般找我面试的都是小公司,一般问的比较简 ...

  4. IBM --Java 实习生面试题

    IBM --Java 实习生面试题 总结: 1   自我介绍,简单描述下自己做的项目 2   说一下SpringMVC原理 3   说一下自己是如何搭建SSH框架的? 4   Spring原理,Spr ...

  5. java实习生面试题_java实习生面试题.doc

    java实习生面试题 [标签:标题] 实习生在面试Java岗位时,做好面试准备很重要,那么你了解面试题目了吗?下面阳光网小编已经为你们整理了java实习生面试题,希望可以帮到你. java实习生面试题 ...

  6. java实习生面试题_java实习生面试题大全(2019年整理)

    java实习生面试题大全(2019年整理) 标准SQL语法及语句 一道关于group bySQL 语句面试题 表中有A B C 三列,用SQL 语句实现:当A 列大于B 列时选择A 列否则选择B 列, ...

  7. 【Java实习生面试题系列】-- 多线程篇四

    文章目录 1. 说下对同步器 AQS 的理解? 2. AQS 的原理是什么? 3. AQS 底层使用了模板方法模式,你能说出几个需要重写的方法吗? 4. 说下对 Semaphore.CountDown ...

  8. Java实习生面试题(二)

    Java实习生面试题如约更新,有需要的小伙伴可以路过不要错过了!看上一篇java实习生面试题(一)的反响还是很不错的,就继续更新了,也非常感谢各位小伙伴的持续关注-- 这次更偏基础一些! 1.Stri ...

  9. 大三暑假Java实习生面试题总结(郑州)

    大三暑假Java实习生面试题总结(郑州) 1,说说StringBuffer和StringBuilder的区别? 2,说说sleep()和wait() 的区别? 3,说说mybatis核心类有哪些? 4 ...

  10. 【Java实习生面试题系列】-- JVM篇一

    文章目录 1. 说一下 JVM 的主要组成部分?及其作用? 2. 堆和栈的区别是什么? 3. 对象的访问定位的两种方式? 4. 判断垃圾可以回收的方法有哪些? 5. 被标记为垃圾的对象一定会被回收吗? ...

最新文章

  1. 第二次作业:王者荣耀软件分析
  2. 分布式系统监视zabbix讲解十之监控tomcat--技术流ken
  3. 如何合并多个(.txt或其他)文件到一个文件
  4. 《天天数学》连载07:一月七日
  5. docker-for-windows配置了阿里云镜像,仍然无法获得链接:(Client.Timeout exceeded while awaiting headers)
  6. 学习Windows Mobile开发系列笔记(win32基本程序框架)
  7. LFS笔记 00 准备环境
  8. Maven - error in opening zip file
  9. FDQuery 怎么能插入NULL参数
  10. jQuery 学习笔记之十 (jQuery ajax )
  11. (转)李嘉诚:成功源于花90%时间考虑失败
  12. daemons java_Java ThreadGroup isDaemon()方法
  13. php项目推荐,php教程推荐:最值得推荐的10个php教程
  14. ubuntu svn命令
  15. pscc2019滤镜抽出_Photoshop(ps)cc2019 已经发现你啦!
  16. 鸿蒙大陆v2.8正式版,鸿蒙大陆正式版地图下载-鸿蒙大陆下载 V2.22--pc6下载站
  17. 单片机C语言LED点阵编程,基于单片机的8*8 LED点阵显示技术
  18. access 报表隔行底纹_excel中如何隔行填充底纹
  19. 计算机地图制图相关论文,计算机地图制图原理、特点及发展趋势论文
  20. 系统思考正反馈之马太效应

热门文章

  1. Linux期末考试模拟试题
  2. Linux考试题(带答案)
  3. 冒泡排序(C语言代码介绍)
  4. 电脑无限循环cmd代码 Window系统下死循环
  5. 约瑟夫环(C语言实现)
  6. 新华三杯考前突击---Day3---大数据平台技术篇
  7. SQL读取系统时间的语法(转)
  8. ajax 传json数组对象,ajax传递json数组
  9. C语言自学之路九(用C语言编写小游戏-扫雷)
  10. 计算机三级嵌入式系统