在JAVA和android中常用的单例模式
在很多开发中,项目为了节约资源,都把一个类的构造函数变为私有化,这样整个项目中就不能创建多个实例,这样的方法我们称为单例模式
现在通过代码来简介下这个单例模式:
在新建一个 java 项目后,创建一个实体类 User.java, 和测试类, main.java
代码如下:
1 public class User {
2 private static User user;
3
4 //添加该实例的属性
5 private String name;
6 private String sex;
7 private String age;
8 /**
9 * @return
10 * 初始化一个实例
11 */
12 public static User getInstens(){
13 if(user == null){
14 user = new User();
15 }
16 return user;
17 }
18
19 /**
20 *为了实现 整个项目中,该对象的实例只有一个(有利于节约资源),从而私有化该实例的构造方法
21 *这样就没办法在其他地方new 出一个实例
22 */
23 private User(){
24
25 }
26
27 public User getUser() {
28 return user;
29 }
30 public void setUser(User user) {
31 this.user = user;
32 }
public String getName() {
34 return name;
35 }
36 public void setName(String name) {
37 this.name = name;
38 }
39 public String getSex() {
40 return sex;
41 }
42 public void setSex(String sex) {
43 this.sex = sex;
44 }
45 public String getAge() {
46 return age;
47 }
48 public void setAge(String age) {
49 this.age = age;
50 }
51
52 }
再添加 main 代码来测试:
1 public class main {
2 public static void main(String ages[]) {
3
4 User user = User.getInstens();
5 user.setName("单列模式");
6 System.out.println(user.getName());
7 }
8 }
这里就得 main.java 就可以直接通过 User.getInstens() 来拿到 User 的实例对象。
而在整个项目中就可以保证 该实例只被创建一次,被多次使用;故称之为单例模式
基恩士成长空间 455人发布
查看16道真题和解析