Java面试必备知识精讲
需积分: 33 44 浏览量
更新于2024-07-20
1
收藏 2.14MB PDF 举报
"Java面试宝典2014版"
这篇文档是一本专注于Java面试准备的指南,涵盖了从基础知识到高级概念的各种问题。以下是其中的部分知识点详解:
1. **Java基础部分**
- **类与源文件**:一个`.java`源文件可以包含多个类,但只能有一个公共类(即public class),其他类可以是非公共类,如私有类或包级私有类。
- **goto语句**:Java语言中没有`goto`语句,它鼓励使用结构化编程,避免了无尽的跳转导致的代码混乱。
- **&和&&的区别**:`&`是逻辑与运算符,无论两边表达式是否为真都会进行计算;`&&`也是逻辑与,但只有当左边表达式为真时才会计算右边的表达式,这是短路运算。
- **跳出多重循环**:在Java中,可以使用`break`语句配合标签来跳出多重嵌套循环。
- **switch语句**:switch可以作用于`byte`, `char`, `short`, `int`以及枚举类型,但不能直接作用于`long`和`String`,Java 7以后可以使用字符串。
2. **数据类型与运算**
- **short变量自增**:直接赋值`s1=s1+1`会导致数据溢出,因为结果是int类型,需要强制类型转换;而`s1+=1`会自动处理类型转换。
- **char类型存储中文**:char类型可以存储单个Unicode字符,因此可以存储中文汉字。
- **高效计算2的8次方**:可以用`(1 << 8)`的方式快速计算2的8次方,利用位移运算。
3. **变量与方法**
- **final变量**:final修饰的变量,如果是基本类型,其值不能改变;如果是引用类型,引用本身不可变,但引用的对象可以改变。
- **==与equals**:`==`比较的是两个对象的引用是否相同,而`equals`默认比较内容,但可以重写。
- **静态与实例变量**:静态变量属于类,所有实例共享;实例变量属于对象,每个对象有自己的副本。
- **静态方法与非静态方法**:静态方法不能直接访问非静态成员,因为非静态成员依赖于特定的对象实例。
4. **类与接口**
- **Integer与int**:Integer是int的包装类,对象形式存在,而int是基本类型,效率更高。
- **Math.round**:Math.round(x)会四舍五入,对于正数11.5,结果是12;对于负数-11.5,结果是-11。
- **构造器**:构造器不能被覆盖(override),但可以重载(overload)。
- **接口与继承**:接口可以继承接口,抽象类可以实现接口,但不能继承具体类;抽象类中可以有静态的main方法。
5. **面向对象特性**
- **多态**:Java中的多态通过继承和接口实现,同一方法在不同子类中有不同的表现。
- **abstract类与接口**:abstract类可以有方法实现,可以有成员变量,而接口只能声明方法,不能有实现,且成员变量默认是静态和常量。
- **abstract method**:抽象方法不能是static、native或synchronized,因为这些修饰符与抽象方法的定义相冲突。
6. **内部类**
- **内部类**:内部类可以是成员内部类、局部内部类、匿名内部类等,提供了一种创建紧密关联的类的方式。
- **StaticNestedClass与InnerClass**:StaticNestedClass是静态嵌套类,可以独立于外部类实例存在;InnerClass是内部类,必须依赖外部类实例。
- **内部类与外部类成员**:内部类可以直接访问外部类的所有成员,包括私有成员,但外部类不能直接访问内部类的私有成员。
这些知识点只是Java面试宝典2014版的一部分,全面复习并理解这些内容将有助于Java开发者在面试中表现出色。
2014-04-05 上传
2018-02-08 上传
2016-05-08 上传
2020-05-02 上传
392 浏览量
2020-01-14 上传
北漂程序员-阿力
- 粉丝: 48
- 资源: 45
最新资源
- WPF渲染层字符绘制原理探究及源代码解析
- 海康精简版监控软件:iVMS4200Lite版发布
- 自动化脚本在lspci-TV的应用介绍
- Chrome 81版本稳定版及匹配的chromedriver下载
- 深入解析Python推荐引擎与自然语言处理
- MATLAB数学建模算法程序包及案例数据
- Springboot人力资源管理系统:设计与功能
- STM32F4系列微控制器开发全面参考指南
- Python实现人脸识别的机器学习流程
- 基于STM32F103C8T6的HLW8032电量采集与解析方案
- Node.js高效MySQL驱动程序:mysqljs/mysql特性和配置
- 基于Python和大数据技术的电影推荐系统设计与实现
- 为ripro主题添加Live2D看板娘的后端资源教程
- 2022版PowerToys Everything插件升级,稳定运行无报错
- Map简易斗地主游戏实现方法介绍
- SJTU ICS Lab6 实验报告解析