没有合适的资源?快使用搜索试试~ 我知道了~
JavaSE 面试题 .docx
资源推荐
资源详情
资源评论
第 1 章 JavaSE 面试题
1、自增变量
public static void main(String[] args) {
int i = 1;
i = i++; // i=1
int j = i++; // j=1 i=2
int k = i + ++i * i++; // 2 + 3 * 3 = 11
System.out.println("i=" + i); // i=4
System.out.println("j=" + j); // j=1
System.out.println("k=" + k); // 11
}
复制
(1)
(2)
(3)
小总结
2、编程题:写一个 Singleton 示例
� Singleton:在 Java 中即指单例设计模式,它是软件开发中最常用的设计模式之一。
� 单:唯一
� 例:实例
� 单例设计模式,即某个类在整个系统中只能有一个实例对象可被获取和使用的代码
模式。
� 例如:代表 JVM 运行环境的 Runtime 类。
要点: 1、某个类只能有一个实例; 构造器私有化 2、它必须自行创建这个实例;
含有一个该类的静态变量来保存这个唯一的实例 3、它必须自行向整个系统提供这个实例;
对外提供获取该实例对象的方式: (1)直接暴露 (2)用静态变量的 get 方法获
取
几种常见形式: 饿汉式:在类初始化时直接创建对象,不存在线程安全问题 直接实例
化饿汉式(简洁直观) 枚举式(最简洁) 静态代码块饿汉式(适合复杂实例化)
示例代码如下:
package com.atguigu.singleton;
/*
* 饿汉式:
* 在类初始化时直接创建实例对象,不管你是否需要这个对象都会创建
*
* (1)构造器私有化
* (2)自行创建,并且用静态变量保存
* (3)向外提供这个实例
* (4)强调这是一个单例,我们可以用 final 修饰
*/public class Singleton1 {
public static final Singleton1 INSTANCE = new Singleton1();
private Singleton1() {
}}
复制
示例代码如下:
package com.atguigu.singleton;
/*
* 枚举类型:表示该类型的对象是有限的几个
* 我们可以限定为一个,就成了单例
*/public enum Singleton2 {
INSTANCE}
复制
示例代码如下:
package com.atguigu.singleton;
import java.io.IOException;import java.util.Properties;
public class Singleton3 {
public static final Singleton3 INSTANCE;
private String info;
static {
try {
Properties properties = new Properties();
properties.load(Singleton3.class.getClassLoader().getResourceAsStream("
single.properties"));
INSTANCE = new Singleton3(properties.getProperty("info"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
private Singleton3(String info) {
this.info = info;
}
public String getInfo() {
return info;
}
public void setInfo(String info) {
this.info = info;
}
@Override
public String toString() {
剩余22页未读,继续阅读
资源评论
老歪不歪
- 粉丝: 31
- 资源: 4041
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功