2021年08月24日 java2

考点1:

队列(Queue)是先进先出的。( )

  • A 正确
  • B 错误

解析

显示答案/隐藏答案正确答案: A

举个栗子,可以这样理解: 1.队列:先进先出。很好理解就是排队。 2.栈:后进先出。就像堆放在桌子上的一碟碟盘子,最后放的,肯定是最先拿的。

考点2:

关于AOP错误的是?

  • A AOP将散落在系统中的”方面”代码集中实现
  • B AOP有助于提高系统可维护性
  • C AOP已经表现出将要替代面向对象的趋势
  • D AOP是一种设计模式,Spring提供了一种实现

解析

显示答案/隐藏答案正确答案: C

AOP和OOP的区别

1.面向方面编程 AOP

偏重业务处理过程的某个步骤或阶段,强调降低模块之间的耦合度,使代码拥有更好的移植性。

2.面向对象编程 (OOP)

则是对业务分析中抽取的实体进行方法和属性的封装。

也可以说AOP是面向业务中的动词领域,OOP面向名词领域。
AOP的一个很重要的特点是源代码无关性,也就是说如果我们的系统中引用了AOP组件,即使我们把该组件去掉,系统代码也应该能够编译通过。要实现这一点,可以使用动态proxy模式。

AOP与OOP是面向不同领域的两种设计思想。 OOP(面向对象编程)针对业务处理过程的实体及其属性和行为进行抽象封装,以获得更加清晰高效的逻辑单元划分。 AOP(面向切面编程)是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。 这两种设计思想在目标上有着本质的差异。

考点3:

非抽象类实现接口后,必须实现接口中的所有抽象方法,除了abstract外,方法头必须完全一致.

  • A 正确
  • B 错误

解析

显示答案/隐藏答案正确答案: B

两同两小一大

实际上这道题考查的是两同两小一大原则:

  • 方法名相同,
  • 参数类型相同
  • 子类返回类型小于等于父类方法返回类型,
  • 子类抛出异常小于等于父类方法抛出异常,
  • 子类访问权限大于等于父类方法访问权限。

方法头指:修饰符+返回类型+方法名(形参列表)

什么是方法头方法体方法签名

方法由方法头(Method Header)和方法体(Method Body)组成,

https://blog.csdn.net/tgvincent/article/details/97516256
方法头: 包括方法的修饰符、返回值类型、方法名、形式参数(最后两项是方法签名)
方法体: 在Java语言中方法体一个方法中用大括号{}括起来的部分
方法签名: 方法名称+参数列表(包括参数的类型和顺序)
注意,签名不包括方法的访问修饰符、返回类型

应用场景-重载和重写:

重载(Override): 一个类中,定义的多个方法名相同但是参数列表不同的方法(签名不同)
重写(Overlode): 子父类中,子类定义了与父类方法签名相同的方法。
注意:必须是从父类继承而来的方法。父类中的private方法,子类没有权限继承,因而重写不了。

例如:

1
2
3
4
public static void main(String []args)
{
//方法体
}

方法头:

1
public static void main(String []args)

方法体:

1
2
3
{
//方法体
}

方法签名:

1
main(String[])

考点4:

下面代码的运行结果是( )

1
2
3
4
5
6
7
public class Arraytest
{
int a[] = new int[6];
public static void main ( String arg[] ) {
System.out.println ( a[0] );
}
}
  • A null
  • B 0
  • C 编译出错
  • D 运行出错

解析

显示答案/隐藏答案正确答案: C

静态成员不能访问非静态成员

在java中静态方法中不能使用非静态方法和非静态变量。但非静态方法中可以使用静态变量。

考点5:

下面哪些类实现或继承了 Collection 接口?

  • A HashMap
  • B ArrayList
  • C Vector
  • D Iterator

解析

显示答案/隐藏答案正确答案: BC

这里有一张图片

这里有一张图片

这里有一张图片

这里有一张图片

这里有一张图片

这里有一张图片

Collection下有三个子接口List,Set,Queue。
Map下有两个子接口AbstractMap,SortedMap,
所以看到:

  • 一个类名属于什么什么List,Set,Queue就是实现了Collection接口,
  • 一个类名属于什么什么Map就是实现了Map接口

考点6:

实现或继承了Collection接口的是()

  • A Map
  • B List
  • C Vector
  • D Iterator
  • E Set

解析

显示答案/隐藏答案正确答案: BCE

这里有一张图片

在java.util包中提供了一些集合类,常用的有List、Set和Map类,其中List类和Set类继承了Collection接口。这些集合类又称为容器,长度是可变的,数组用来存放基本数据类型的数据,集合用来存放类对象的引用。
List接口、Set接口、Map接口以及Collection接口的主要特征如下:

1.Collection接口是List接口和Set接口的父接口,通常情况下不被直接使用。
2.List接口继承了Collection接口,List接口允许存放重复的对象,排序方式为按照对象的插入顺序。
3.Set接口继承了Collection接口,Set接口不允许存放重复的对象,排序方式为按照自身内部的排序规则。
4.Map接口以键值对(key—value)的形式存放对象,其中键(key)对象不可以重复,值(value)对象可以重复,排序方式为按照自身内部的规则。

C:Vector实现了List接口,即间接实现Collection接口
D:Iterator是Java迭代器最简单的实现,没有实现Collection接口

这里有一张图片

这里有一张图片

考点7:

下面关于Applet的说法是正确的是

  • A Applet可以在带有Java解释器的浏览器中运行
  • B Applet类必须继承java.applet.Applet
  • C Applet可以访问本地文件
  • D AppletObject类的子类

解析

显示答案/隐藏答案正确答案: ABCD