Java SE 8编程基础考试参考解答

单选

类方法

static修饰的方法就是类方法。[类方法]使用类名.方法名调用即可。

JDK.JRE.JVM关系

jdk>jre>jvm

在jre目录里面有两个文件夹bin和lib,可以认为bin里的就是jvm,lib中则是
jvm工作所需要的类库,而jvm和 lib和起来就称为jre(JVM+Lib=JRE)。

在这里插入图片描述

单例模式

不清楚答案对不对。。。。之后想一想吧。
单例

堆、栈

堆内存:new对象,长时间存储(生存时间)
栈内存:程序运行等。
寄存器:暂存操作数和运算结果等信息
方法区:static变量信息、类信息。

MyBatis全局配置文件

https://www.cnblogs.com/java-zmj/p/8075168.html

设计模式

+行为型模式
这些设计模式特别关注对象之间的通信
+结构型模式
这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。
+创建型模式
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。

注解(Annotation),也叫元数据

@Override 表示当前方法覆盖了父类的方法
@Deprecation 表示方法已经过时,方法上有横线,使用时会有警告。
@SuppressWarnings 表示关闭一些警告信息(通知java编译器忽略特定的编译警告)

https://blog.csdn.net/tanga842428/article/details/75956957

DispatcherServlet作用

网上教程看的我一脸懵逼。。。

  • 初始化ApplicationContext
  • 接受请求(HTTP等),将请求映射到处理器
  • 加载配置文件
  • 解析视图

继承

private成员对象可以认为时没有继承的,因为不能直接访问。

this.constructor

  • 只能再构造函数中使用this调用其它构造函数,且必须放在第一行!!
  • 构造函数不能互相调用

ViewResolver

ViewResolver:视图解析器
处理器查找:对应下图1.2步

  • 处理器适配器:处理Handler代码

面向对象编程原则

开闭原则:可扩展不可更改
里氏代换原则:子类可以代替基类出现的地方。
依赖倒转:依赖于抽象,针对接口编程。

https://www.cnblogs.com/silencer/p/10812417.html

反射机制

getMethods:返回公共方法
getDeclaredMethods:返回所有方法
getName:返回类完全限定名javax.swing.JButton
forName:通过完全限定名获得对象
getDeclaredConstructors:获取全部构造函数

ArrayList空间扩充

第一次默认分配10,之后一次变成1.5倍。

.java文件编译

.java->.class字节码->机器码

Spring自动装配

byName、byType、constructor、default

sleep()和wait()

sleep:Thread方法、不释放对象锁、不让出系统资源结束后自动恢复(设置时间)、需要捕获异常
wait:Object方法、放弃对象锁、出让资源进入等待(不设置时间)、不需要捕获异常

线程

  • 线程创建后不一定立刻运行
  • 调用start不一定立刻运行
  • 线程被抢断进入就绪队列最前面
  • 线程可能因为不同原因进入就绪:
    • 阻塞的进程获得等待的资源或信号 (阻塞态 —> 就绪态)

    • 时间片轮转的情况下,进程的时间片用完了 (运行态 —> 就绪态)

    • CPU调度给优先级更高的进程 (运行态 —> 就绪态)

bean的scope属性

JavaBean: page ---------- \request\session\application.
SpringBean:singleton\prototype\request\session\global session.

RuntimeException

RuntimeException的特点是允许不被catch。而其它定非运行时异常如果抛出的话必须显式的catch,否则编译不过。

Java是多线程语言

不是多进程的。

线程安全

Vector:就比Arraylist多了个同步化机制(线程安全)。

Hashtable:就比Hashmap多了个线程安全。

ConcurrentHashMap:是一种高效但是线程安全的集合。

StringBuffer:可变字符串
https://www.cnblogs.com/qccadmin/p/10065168.html

volatile

避免数据读取不一致,将数据暴露出去。
但是volatile不能保证数据操作的原子性。

SpringMVC用到的设计模式

单例模式
策略模式、工厂模式、代理模式、适配器模式

构造方法

抽象类可以有构造方法,但是不能用其实例化对象,可以在实现类中调用(super)。

StringBuffer.append

返回StringBuffer

SpringMVC转发关键字

转发:forward
重定向:redirect

猜你喜欢

转载自blog.csdn.net/weixin_37627774/article/details/108239843