Java考试题

1、类方法的描述正确的是

1、类方法可以用对象名.方法名()的形式调用

2、类中被static修饰的方法叫类方法

3、普通方法可以使用类名.方法名()的形式调用

2、单例设计模式的描述,正确地为

  1. 单例模式只能自己内部创建,构造方法私有化。

  2. 单例模式属于创建型模式

  3. 将一个类设计为单例设计模式,必须私有其空参数构造方法,并且还不能定义由参数的构造方法

3、静态方法运行时存在于栈内存区域

4、Mybatis映射配置文件中的标签有dataSource

5、单例模式,工厂模式属于创建型模式,观察者模式属于行为型模式,代理模式属于结构型模式。

6、静态方法说法正确的为

1、静态方法指的是被static关键字修饰的方法

2、静态方法不占用对象的内存空间,而非静态方法占用对象的内存空间

3、静态方法内不可以使用this关键字

4、静态方法内部只能访问被static修饰的成员

7、JDK自带的注解

@Override

@Deprecated

@Suppvisewarnings

8、SpringMVC的核心控制器DispatcherServlet作用

DispatcherServlet 前端控制器:用来接收http请求,加载配置文件,初始化上下文对象

9、关于继承性

 

1、一个类可以有多个子类

2、子类可以继承父类中除私有成员外的的其他成员和方法。

3、Java可以通过接口使子类拥有多个父类的成员。

4、Java只允许单重继承,C++支持单多重继承

10、final修饰的成员变量是常量,可以被继承,不可以被多次赋值。

11、关于使用this调用构造方法的说法中,正确的为

1、使用this调用构造方法的格式为this([参数1,参数2...])

2、只能在构造方法中使用this调用其他的构造方法

3、在一个类的俩个构造方法中不能使用this相互调用

4、使用this关键字调用其他构造方法的语句必须放在第一行

12、SpringMVC中的ViewResolver 为视图解析器

13、输入输出异常为IOException

14、依赖倒转原则:面向接口开发而非面向类

15、反射:getDeclaredFields,getMethods,getDeclaredMethods。getMethods返回此Class对象所表示的实体的公共方法。反射中获取构造器的为getDeclaredMethods()

16、自定义运行时异常必须继承RuntimeException

17、spring 中自动装配的俩种:通过byName 类名进行匹配,通过byType 类型进行匹配。

18、sleep()和wait(),描述正确的为

1、sleep是线程类(Thread)的方法,wait是Object类的方法

2、sleep不释放对象锁,wait放弃对象锁

3、sleep暂停线程,但监控状态仍然保持,结束后自动恢复

19、String类的方法有:

1、toString

2、substring

3、indexOf

4、charAt

20、有关线程的说法:

1、使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行

2、当一个线程因为抢先机制而停止运行,他被放在可运行队列的前面

3、一个线程可能因为不同的原因停止并进入就绪状态

21、spring框架bean的scope属性值有:

1、session

2、request

22、下列说法是正确的:

1、final可修饰类,属性(变量),方法

2、abstract可修饰类,方法

3、抽象方法只有方法声明,没有方法体

4、关键字final和abstract不可以同时使用(final的类不能被重写和继承,而abstract的类是抽象类,本身没有实现,只能通过子类来实现,也就是说必须被继承。所以说它们是没法同时做修饰符的。abstract抽象类,需要继承,而final定义的类不能继承,所以final 和 abstract 不能同时修饰一个类。)

23、关于异常(Exception)

1、异常的基类为Exception,所有异常都必须直接或间接继承它

2、异常可以用try catch来捕获并处理

3、如果某异常继承RuntimeException,则该异常可以不被声明

24、关于线程

1、JAVA是单进程多线程的语言

2、启动一个线程的方法:继承Thread类;实现Runnable接口;直接在函数体使用(匿名内部类,其实也是属于第二种实现方式的特例。)

25、事务特性

1、原子性

2、持久性

3、隔离性

4、一致性

26、ArrayList,LinkedList,HashMap,Hashtable中只有Hashtable是线程安全。

27、equals和==

1、功能不同

"=="是判断两个bai变量du或实例是不是指向同一个zhi内存空间。

"equals"是判断两个变量或实例所指向的内dao存空间的值是不是相同。

2、定义不同

"equals"在JAVA中是一个方法。

"=="在JAVA中只是一个运算符合。

3、equals可以通过重写来比较对象的地址

28、集合:ArrayList初始化默认是10,但不会扩充。ArrayList list = new ArrayList(20);中的list扩充了0次

29、volatile不能保证线程安全而synchronized可以保证线程安全

30、springmvc实现controller是单例的

31、抽象类可以有构造方法,接口不能有构造方法

32、一个普通的类实现接口,必须实现所有的方法,否则变成抽象类

33、抽象类可以没有抽象方法

34、反射可以访问和调用私有的属性

35、StringBuffer:append()返回的类型是StringBuffer,线程安全。StringBuilder类的append()方法的返回值类型是StringBuilder

区别

1、StringBuffer 与 StringBuilder 中的方法和功能完全是等价的,

2、只是StringBuffer 中的方法大都采用了 synchronized 关键字进行修饰,因此是线程安全的,

而 StringBuilder 没有这个修饰,可以被认为是线程不安全的。 

3、在单线程程序下,StringBuilder效率更快,因为它不需要加锁,不具备多线程安全

而StringBuffer则每次都需要判断锁,效率相对更低

 

36、构造方法的访问权限无需和类的访问权限一样

37、SpringMVC转发的关键字是forward;重定向关键字为redirecrt

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值