摩拜2018开发工程师笔试题目与解析

版权申诉
0 下载量 189 浏览量 更新于2024-09-09 收藏 435KB PDF 举报
"摩拜2018校招开发工程师笔试卷及答案包含了关于Java编程、访问修饰符、线程调度以及数组等编程基础知识的题目和答案。" 在这份笔试卷中,涉及到的知识点主要集中在以下几个方面: 1. **Java中的`super`和`this`关键字**: - `super`关键字用于引用父类的成员,特别是在子类中调用父类的构造方法时。题目指出,在子类构造方法中,`super()`必须写在第一行,否则编译不通过。这是因为Java要求子类构造器在执行任何其他操作之前,必须先初始化父类的状态。 - `this`关键字则用来引用当前对象的实例变量或调用当前类的其他构造器。题目提到`this()`和`super()`不一定要在同一构造方法内第一行出现,这是正确的,但它们不能同时存在同一个构造方法中,因为它们都用于初始化,只能选择其一。 2. **访问修饰符的作用范围**: - 访问修饰符决定了类、接口、字段和方法的可访问性。题目提供的正确答案是`public-protected-default-private`,这表示访问权限从大到小依次是公共(`public`)、受保护(`protected`)、包内默认(`default`)和私有(`private`)。 3. **线程调度**: - Java中的线程调度涉及到`start()`、`run()`、`resume()`和`sleep()`等方法。题目中指出,`start()`方法用于调度线程使其运行,这是正确的。`start()`会启动线程并执行`run()`方法。而`run()`并不是启动线程的方法,它只是一个普通的方法,可以在当前线程中直接调用。`resume()`方法是恢复被暂停的线程,`sleep()`让当前线程休眠一段时间。 4. **数组基础知识**: - 数组是Java中存储固定数量相同类型元素的数据结构。题目中提到了一维数组实质上是相同类型变量的列表,这是正确的,数组可以看作是连续内存空间里的一系列变量。 - 创建数组时,需要定义数组变量的类型,并指定数组的大小。例如`char c[] = new char[26]`声明了一个包含26个字符的数组。 - 数组的索引从0开始,因此`c[0]`是数组的第一个元素,`c[25]`是最后一个元素。 这份笔试卷的题目覆盖了Java编程基础的重要概念,对于准备参加开发工程师面试或笔试的人员来说,是非常有价值的复习资料。学习和理解这些知识点有助于提升编程能力和解决问题的能力。