Java面试题---设计模式
# JDK 中常用的几个设计模式了解吗?
- 单例模式:用于 Runtime,Calendar 和其他的一些类中
- 工厂模式:用于各种不可变的类如 Boolean。
- 观察者模式:用于 Swing 和许多事件监听中。
- 装饰器设计模式:用于多个 JavaIO 类中
# 什么是设计模式?
设计模式是代码可用性的延申。
# Java 中什么叫做单例设计模式?
单例模式主要在整个系统上共享一些创建时较为耗费资源的对象。整个应用只维护特定类的实例。
# 在 Java 中,什么叫做观察者模式?
观察者是基于对象的状态变化和观察者的通讯,以便他们作出相应的操作。
# 在 Java 中,为什么不允许从静态方法中访问非静态变量?
Java 中不能从静态上下文访问非静态数据只是因为非静态变量都是跟具体的对象实例关联的。
而静态的却没有和任何实例关联。
# 在 Java 中,什么时候使用重载,什么时候使用重写?
如果有一个类的不同实现有着不同的方式在做同一件事,则就是重写(overriding),
而重载是不同的输入做一件事,在 Java 中,重载的方法签名不同。