本文为大家分享了java门禁系统面向对象程序设计,供大家参考,具体内容如下
下面是对门禁系统的介绍:
需求
1、某公司安装了电子门,要设计门禁系统:
2、公司的雇员可以凭借密码、胸卡或指纹进入公司
3、计算机根据雇员的验证方式对其身份进行验证
4、管理员在监控室可以通过按钮直接开启电子门
5、访客可以按门铃请求进入,由管理员为其放行
下面请看代码
/** * 门禁系统 */ 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门禁系统
以上就是对代码的简单简介,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍php面向对象程序设计入门教程,包括了php面向对象程序设计入门教程的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php面向对象程序设计。分享给大家供大家参考,具体如下: 1.面向对象与面向过程的对比 面向过程:以事件为中心,分几个步骤去完成。不可扩展,html与php不分离 面向对象:自己作为指挥者,指挥别人去做。具有可扩展性,html和php代码分离 2.什么是对象?
本文向大家介绍java实现门禁系统,包括了java实现门禁系统的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java实现门禁系统的具体代码,供大家参考,具体内容如下 Door.java Computer.java Amind.java Employee.java Guest.java Validate.java FingVId.java PasswordVId.java Test.
ECMAScript对于对象的定义:无序属性的集合,其属性可以包含基本值、对象或者函数 JavaScript每个对象都是基于一个引用类型创建的。 引用类型可以是原生类型也可以是自己定义的类型。 原型规则和示例 5条原型规则 原型规则是学习原型链的基础 第1条 所有的引用类型(数组、对象、函数),都具有对象特质、即可自由扩展属性(除了“NULL”以外) var obj = {}; obj.a = 1
“在面向对象编程中,抽象是对用户隐藏实现细节的过程,只有功能才会提供给用户。” 我一直在试图理解抽象,有人能告诉我们如何准确地隐藏实现细节吗?使用一个程序
我在面试时遇到了这个问题,我不知道如何正确地回答它。问题是,我们有一个家具系统,我们可以管理不同的家具。每种家具都有自己的“代号”材料(如:木头、铁)和“代号”名称、“代号”类型(如:椅子、书桌、桌子)。 对于每一种家具,我们都可以调用和。首先,我在顶部绘制名为和的基类。在家具下面,我放了不同类型的家具,如桌子,椅子和做同样的事情材料类。如下图所示。 然后,我说如果我们要生产一件像这样的新家具,我
创建一个新对象 this指向这个新对象 执行代码,即对this赋值 返回this ? new运算符使用 function Foo(name,age){ this.name = name ; this.age = age ; //return this //默认有这一行 } var f = new Foo('zhangsan',20); //var f1 = new Foo('list'