java常见面试题

1.什么是B/S架构?什么是C/S架构B/S(Browser/Server),
浏览器/服务器程序C/S(Client/Server),客户端/服务端,桌面应用程序
2.你所知道网络协议有那些?
HTTP:超文本传输协议FTP:文件传输协议SMPT:简单邮件协议TELNET:远程终端协议POP3:邮件读取协议
3.Java都有那些开发平台?
JAVA SE:主要用在客户端开发JAVA EE:主要用在web应用程序开发JAVA ME:主要用在嵌入式应用程序开发
4.什么是JVM?java虚拟机包括什么?
JVM:java虚拟机,运用硬件或软件手段实现的虚拟的计算机,
Java虚拟机包括:寄存器,堆栈,处理器
5.Java是否需要开发人员回收内存垃圾吗?
大多情况下是不需要的。Java提供了一个系统级的线程来跟踪内存分配,
不再使用的内存区将会自动回收
6.什么是JDK?什么是JRE?
JDK:java development kit:java开发工具包,
是开发人员所需要安装的环境JRE:java runtime environment:java运行环境,java程序运行所需要安装的环境
7.什么是数据结构?
计算机保存,组织数据的方式
8.Java的数据结构有那些?
线性表(ArrayList)链表(LinkedList)栈(Stack)队列(Queue)图(Map)树(Tree)
9.什么是OOP?
面向对象编程
10.什么是面向对象?
世间万物都可以看成一个对象。每个物体包括动态的行为和静态的属性,这些就构成了一个对象。
11.类与对象的关系?
类是对象的抽象,对象是类的具体,类是对象的模板,对象是类的实例
12.Java中有几种数据类
型整形:byte,short,int,long
浮点型:float,double
字符型:char布尔型:boolean
13.什么是隐式转换,什么是显式转换
显示转换就是类型强转,把一个大类型的数据强制赋值给小类型的数据;
隐式转换就是大范围的变量能够接受小范围的数据;
隐式转换和显式转换其实就是自动类型转换和强制类型转换。
14.Char类型能不能转成int类型?
能不能转化成string类型,能不能转成double类型Char在java中也是比较特殊的类型,
它的int值从1开始,一共有2的16次方个数据;Char Char类型可以隐式转成int,double类型,但是不能隐式转换成string;
如果char类型转成byte,short类型的时候,需要强转。
15.什么是拆装箱?
拆箱:把包装类型转成基本数据类型装箱:把基本数据类型转成包装类型
16.Java中的包装类都是那些?
byte:Byte short:Short int:Integer long:Long float:Float double:Double char:Character boolean:Boolean
17.一个java类中包含那些内容?
属性、方法、内部类、构造方法、代码块。
18.例如: if(a+1.0=4.0),这样做好吗?
不好,因为计算机在浮点型数据运算的时候,会有误差,尽量在布尔表达式中不使用浮点型数据(if,while,switch中判断条件不使用浮点型)
19.那针对浮点型数据运算出现的误差的问题,你怎么解决?
使用Bigdecimal类进行浮点型数据的运算
20.++i与i++的区别
++i:先赋值,后计算i++:先计算,后赋值
21.程序的结构有那些?
顺序结构选择结构循环结构
22.数组实例化有几种方式?
静态实例化:创建数组的时候已经指定数组中的元素,1int[] a=new int[]{1,3,3}
动态实例化:实例化数组的时候,只指定了数组程度,数组中所有元素都是数组类型的默认值
23.Java中各种数据默认值Byte,short,int,long默认是都是0Boolean默认值是falseChar类型的默认值是’’Float与double类型的默认是0.0对象类型的默认值是null24.Java常用包有那些?
Java.langJava.ioJava.sqlJava.utilJava.awtJava.netJava.math
25.Java最顶级的父类是哪个?
Object
26.Object类常用方法有那些?
EqualsHashcodetoStringwaitnotifyclonegetClass
27.java中有没有指针?
有指针,但是隐藏了,开发人员无法直接操作指针,由jvm来操作指针
28.java中是值传递引用传递?理论上说,java都是引用传递,对于基本数据类型,传递是值的副本,而不是值本身。
对于对象类型,传递是对象的引用,当在一个方法操作操作参数的时候,其实操作的是引用所指向的对象。
29.假设把实例化的数组的变量当成方法参数,当方法执行的时候改变了数组内的元素,那么在方法外,数组元素有发生改变吗?
改变了,因为传递是对象的引用,操作的是引用所指向的对象
30.实例化数组后,能不能改变数组长度呢?
不能,数组一旦实例化,它的长度就是固定的

你可能感兴趣的:(java常见面试题)