亿迅笔试题解析:Java基础与OO设计原则
4星 · 超过85%的资源 需积分: 30 124 浏览量
更新于2024-09-11
2
收藏 163KB DOC 举报
"亿迅公司的笔试题目涉及到Java编程基础、面向对象设计原则、集合框架以及接口继承等多个知识点。"
在亿迅公司的笔试题中,我们可以看到一些关键的IT知识点:
1. **字符类型(char)**: 在Java中,`char`变量占用一个字节,通常用来存储单个Unicode字符,如英文字母或数字。由于一个汉字通常由两个字节表示,`char`变量无法直接存储中文字符。如果要存储中文字符,可以使用`String`类型或者`char`数组。
2. **集合框架(List, Set, Map)**:
- **List**: 是有序的集合,允许有重复元素,可以通过索引访问。例如:ArrayList和LinkedList。
- **Set**: 是无序且不允许重复元素的集合,如HashSet和TreeSet。
- **Map**: 存储键值对,键是唯一的,如HashMap和TreeMap。List与Set的主要区别在于Set不允许有重复元素,且不保证元素顺序。
3. **面向对象设计原则**:
- **单一职责原则(SRP)**: 一个类应该只有一个引起它变化的原因。
- **开放封闭原则(OCP)**: 类应该对扩展开放,对修改关闭。
- **里氏替换原则(LSP)**: 子类必须能够替换掉它们的基类。
- **依赖倒置原则(DIP)**: 应该依赖于抽象而不是具体实现。
- **接口隔离原则(ISP)**: 不应强迫客户端依赖于它们不用的方法。
- **迪米特法则(LSP)**: 降低类之间的耦合度,一个对象应当对其他对象有最少的了解。
4. **字符串对象创建**:
`String x = new String("a") + new String("b");` 这行代码会创建至少3个对象:两个临时的`String`对象("a"和"b"),以及一个新的`String`对象,它包含连接后的结果"ab"。这是因为`+`操作符在字符串上会创建新的`String`对象。
5. **接口与继承**:
- 接口(如`Playable`, `Bounceable`)可以被一个类实现,也可以被其他接口继承。在Java中,一个类可以实现多个接口,但只能继承一个父类。
- 接口中的变量默认是`public static final`的,这意味着它们是静态常量,可以直接通过接口名访问,如`A.x`。
在给定的错误示例中,展示了接口属性和类成员冲突的问题,以及接口继承和多态的运用。在类`C`中,`pX()`方法试图访问`x`,但由于`B`类和接口`A`都有`x`成员,导致编译错误。解决方法是使用`super.x`或`A.x`来明确指定访问哪一个`x`。在另一个例子中,接口`Rollable`错误地创建了`Ball`实例,这违反了接口不应该包含实例化代码的原则。正确的做法是将实例化移至实现接口的类中。
2008-11-20 上传
140 浏览量
antn520
- 粉丝: 0
- 资源: 3
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南