Java面试题

2018-12-29今日流程

2018-12-29  本文已影响8人  天道灬酬勤

面试题

1. 代码中如何实现多态

实现多态主要有以下三种方式:

  1. 接口实现
  2. 继承父类重写方法
  3. 同一类中进行方法重载

2. switch中能否使用string做参数

在jdk 1.7之 前,switch只 能支持byte, short, char, int或者其对应的封装类以及Enum类 型。从jdk 1.7之 后 switch开 始支持String。

3.基本数据类型有哪些

byte:Java中 最小的数据类型,在内存中占8位(bit), 即1个字节,取值范围‐128~127 ,默认值0
short :短整型,在内存中占16位,即2个 字节,取值范围‐32768~32717 ,默认值0
int: 整型,用于存储整数,在内在中占32位,即4个 字节,取值范围‐2147483648~2147483647, 默认值0
long: 长整型,在内存中占64位,即8个 字节‐263~263 ‐1,默认值0L
float :浮点型,在内存中占32位,即4个 字节,用于存储带小数点的数字(与double的 区别在于float类 型有效小数点 只有6~7位 ),默认值0
double :双精度浮点型,用于存储带有小数点的数字,在内存中占64位 ,即8个字节,默认值0
char: 字符型,用于存储单个字符,占16位,即 2个字节,取值范围0~65535 ,默认值为空
boolean :布尔类型,占1个字节,用于判断真或假(仅有两个值,即true、 false) ,默认值false

4. 说说你对于static关键字的理解

Static可以修饰内部类、方法、变量、代码块
Static修 饰的类是静态内部类
Static修 饰的方法是静态方法,表示该方法属于当前类的,而不属于某个对象的,静态方法也不能被重写,可以直 接使 用类名来调用。在static方 法中不能使用this或 者super关 键字。
Static修 饰变量是静态变量或者叫类变量,静态变量被所有实例所共享,不会依赖于对象。静态变量在内存中只有一份 拷贝,在JVM加 载类的时候,只为静态分配一次内存。
Static 修饰的代码块叫静态代码块,通常用来做程序优化的。静态代码块中的代码在整个类加载的时候只会执行一 次。 静态代码块可以有多个,如果有多个,按照先后顺序依次执行。

5. JAVA多态的实现原理

A.抽象的来讲,多态的意思就是同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是 函数调 用)
b.实现的原理是动态绑定,程序调用的方法在运行期才动态绑定,追溯源码可以发现,JVM 通过参数的自动转型来找到 合适的办法

6. 内部类与外部类的调用

a) 内部类可以直接调用外部类包括private 的成员变量,使用外部类引用的this.关 键字调用即可 b) 而外部类调用内部类需要建立内部类对象

7. 什么是拆装箱

拆箱:把包装类型转成基本数据类型
装箱:把基本数据类型转成包装类型

8. 程序的结构有那些

顺序结构
选择结构
循环结构

9.Object类常用方法有那些

Equals Hashcode toString wait notify clone getClass

10. 实例化数组后,能不能改变数组长度呢

不能,数组一旦实例化,它的长度就是固定的

11. 抽象类必须要有抽象方法吗

不是必须。抽象类可以没有抽象方法

流程图

jmyp.png 1.购物车--服务端--操作流程.png 2.购物车--服务端--查询购物车流程.png 3.购物车--服务端--修改购物车信息.png
上一篇 下一篇

猜你喜欢

热点阅读