本文為大家分享了java門禁系統面向對象程序設計,供大家參考,具體內容如下
下面是對門禁系統的介紹:
需求
1、某公司安裝了電子門,要設計門禁系統:
2、公司的雇員可以憑借密碼、胸卡或指紋進入公司
3、計算機根據雇員的驗證方式對其身份進行驗證
4、管理員在監控室可以通過按鈕直接開啟電子門
5、訪客可以按門鈴請求進入,由管理員為其放行
下面請看代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
/** * 門禁系統 */ package liu; import java.util.*; import org.apache.log4j.logger; import yazh.admin; public class meji { public door door; // 門禁系統的電子門 public input input; // 門禁系統的輸入設備 public int ring; // 門鈴,0為安靜,1為鳴響 public int opensign= 1 ; private logger logger; // 日志文件 public meji(){ this .door = new door(); this .input = new input(); this .ring = 0 ; this .opensign = 0 ; this .logger = logger.getlogger(admin. class .getname()); logger.debug( "--------------歡迎進入門禁系統----------" ); system.out.println( "門禁系統的使用方法\n" + ".模擬管理員按下開門按鈕:輸入“y”,按否是n" ); system.out.println( "***************************************************" ); } public void work() { /* 檢查開門信號 */ if(this.getopensign()==1){ system.out.println("開啟電子門"); logger.debug("~~~~~~~~~開啟電子門,請進~~~~~~~" ); door.open(); // 開啟電子門 } if(this.getopensign()==0){ system.out.println("電子門關閉-------"); logger.debug("~~~~~~~~電子門關閉,勿進~~~~~~~"); door.close(); // 關閉電子門 } /* 電子門開啟狀態將維持5秒后關閉 */ if(door.gettate().equals(door.open)){ try { system.out.println("請快點進入,電子門將延續5秒后關閉,"); logger.debug("~~~~親們~~~~~,請快點進入哦,五秒后就關閉嘍!"); thread.sleep(5000); // 讓電子門開啟狀態維持5秒 } catch (interruptedexception e) { return; } door.close(); system.out.println("電子門已關閉");// 關閉電子 logger.debug("~~~~~~~~電子門關閉,勿進~~~~~~~"); } } /** * @param ring 要設置的 ring */ public void ring() { this.ring = 1; } /** * @return door */ public door getdoor() { return door; } /** * @return input */ public input getinput() { return input; } public int getring() { return ring; } /** * @param ring 要設置的 ring */ public void setring(int ring) { this.ring = ring; } /** * @return opensign */ public int getopensign() { return this.opensign; } /** * @param opensign 要設置的 opensign */ public void setopensign(int opensign) { this.opensign = opensign;// 開門信號,由管理員按下按鈕時產生,1為開啟信號 } public logger getlogger() { // todo auto-generated method stub return logger;//返回日志信息 } } /* * 門禁系統的輸入設備 */ package liu; import java.util.scanner; import org.apache.log4j.logger; import yazh.admin; public class input { private string input = null; //暫時保存密碼 private logger logger; /** * 輸入設備接受認證信息 */ public void input(){ this.logger = logger.getlogger(input.class.getname()); scanner scanner = new scanner(system.in); system.out.println("身份驗證:" ); string passstr = scanner.next();//密碼驗證 if(passstr.equals("pa12345")){ system.out.println("密碼驗證正確,請進"); logger.debug("---親----密碼驗證正確,請進哦!!!!!--~"); } /*驗證胸卡*/ else if (passstr.equals("ca12345")){ system.out.println("胸卡驗證正確,請進"); logger.debug("---親----胸卡驗證正確,請進哦!!!!!--~"); } /*驗證指紋*/ else if (passstr.equals( "fa12345" )) { system.out.println( "指紋驗證正確,請進" ); logger.debug( "---親----指紋驗證正確,請進哦!!!!!--~" ); } else { system.out.println( "驗證錯誤,請重新輸入" ); logger.debug( "---sorry----驗證錯誤哦!!!!!--~" ); } } public string getinput() { return input; } public void setinput(string input) { this .input = input; } } |
原代碼下載地址:java門禁系統
以上就是對代碼的簡單簡介,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/zhupengqq/article/details/46474267