黑马程序员技术交流社区
标题:
类的设计及分析问题的方法-----用户登录例子
[打印本页]
作者:
周志龙
时间:
2013-10-9 19:15
标题:
类的设计及分析问题的方法-----用户登录例子
1、用户登录的示例
首先要做的就是先把功能实现:
ublic class LoginDemo01{
public static void main(String args[]){
if(args.length!=2){ // 应该判断输入的参数个数是否是2
System.out.println("输入的参数不正确,系统退出!") ; // 给出一个正确的格式
System.out.println("格式:java LoginDemo01 用户名 密码") ;
System.exit(1) ; // 系统退出
}
String name = args[0] ; // 取出用户名
String password = args[1] ; // 取出密码
if(name.equals("xiaowu")&&password.equals("qiang")){ // 验证
System.out.println("欢迎" + name + "光临!") ;
}else{
System.out.println("错误的用户名和密码!") ;
}
}
};
复制代码
2、问题的进一步分析
》需要一个完成专门验证的类
》为验证进行一个包装,通过一个类去访问验证的类
class Check{ // 完成具体的验证操作
public boolean validate(String name,String password){
if(name.equals("xiaowu")&&password.equals("qiang")){ // 验证
return true ;
}else{
return false ;
}
}
};
class Operate{ // 本类只是调用具体的验证的操作
private String info[] ; // 定义一个数组属性,用于接收全部输入参数
public Operate(String info[]){
this.info = info ; // 通过构造方法取得全部的输入参数
}
public String login(){
Check check = new Check() ; // 实例化Check对象,用于检查信息
this.isExit() ; // 判断输入的参数是否正确
String str = null ; // 用于返回信息
String name = this.info[0] ;// 取出姓名
String password = this.info[1] ; // 取出密码
if(check.validate(name,password)){ // 登陆验证
str = "欢迎" + name + "光临!" ;
}else{
str = "错误的用户名和密码!" ;
}
return str ;
}
public void isExit(){ // 判断参数个数,来决定是否退出程序
if(this.info.length!=2){
System.out.println("输入的参数不正确,系统退出!") ; // 给出一个正确的格式
System.out.println("格式:java LoginDemo02 用户名 密码") ;
System.exit(1) ; // 系统退出
}
}
};
public class LoginDemo02{
public static void main(String args[]){
Operate oper = new Operate(args) ; // 实例化操作类的对象
System.out.println(oper.login()) ; // 取得验证之后的信息
}
};
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2