首页 > 代码库 > 登录、注册案例集合实现

登录、注册案例集合实现

登陆注册案例分析:
         我们现在写代码需要面向对象,我们必须先找到能完成某个功能的类,接着调用里面的方法完成它
 
登陆注册案例中的类:
         用户类
                   成员变量:用户名,密码
                   成员方法:登陆,注册功能
                  
         测试类
                   main
 
 
登陆注册案例中的类的详细分解:
         用户类(User):用户名,密码,邮箱,电话,身份证号。。。。--- 标准的java描述类
        
         我们应该把对用户的所有的操作抽取出来形成一个类:
         用户操作类:注册,登陆
         定义一个接口:就是定义的登陆和注册的功能,我们之前说过接口是是对类的功能的一种扩展,
         其实当时说的还不够完善,接口本质其实是用来定义规则的
        
         测试类:
         main
---------------------------------------------------------------
java中的分包:
com.edu.domain --- 标准的java描述类
com.edu.dao -- 存放的是接口
com.edu.dao.impl -- 存放的是接口实现类
com.edu.util -- 对对象进行操作的工具类
com.edu.test -- 测试类
 
 
package com.edu.domain;
 
publicclassUser {
   
   private String userName;
   private String password;
   public User(String userName,String password) {
      super();
      this.userName = userName;
      this.password = password;
   }
   public User() {
      super();
      // TODO Auto-generated constructor stub
   }
   public String getUserName() {
      returnuserName;
   }
   publicvoid setUserName(StringuserName) {
      this.userName = userName;
   }
   public String getPassword() {
      returnpassword;
   }
   publicvoid setPassword(Stringpassword) {
      this.password = password;
   }
   
}
 
 
 
 
package com.edu.dao;
 
import com.edu.domain.User;
 
   publicinterface  UserDao {
      //定义注册方法
      publicabstract  void regist(User user);
      //定义登录方法
      publicabstractboolean isLogin(StringuserName,String password);
   }
 
 
 
packagecom.edu.dao.impl;
 
importjava.util.ArrayList;
importjava.util.Scanner;
 
importcom.edu.dao.UserDao;
importcom.edu.domain.User;
 
public classUserDaoImpl implements UserDao{
       //创建一个集合
       static ArrayList<User> users = newArrayList<User>();
 
       public void regist(User user) {
              //将对象存入集合
              users.add(user);
              
       }
 
       public boolean isLogin(String userName,String password) {
              boolean flag = false;
              for (User user : users) {
                     if(userName.equals(user.getUserName())&&password.equals(user.getPassword())){
                            flag = true;
                            break;
                     }
              }
              return flag;
       }
       public void Game(){
              //产生一个1-100 的随机数
              int num = (int)(Math.random()*100+1);
              System.out.println("输入你猜的数字");
              
              
              while (true) {
                     Scanner sc = newScanner(System.in);
                     int guessNumber =sc.nextInt();
                     if (guessNumber>num) {
                            System.out.println("大了");
                     }
                     if (guessNumber<num) {
                            System.out.println("小了");
                     }
                     if (guessNumber==num) {
                            System.out.println("恭喜你答对了");
                            break;
                     }
              }
       }
 
}
 
 
 
 
 
 
packagecom.edu.test;
 
importjava.util.Scanner;
 
importcom.edu.dao.impl.UserDaoImpl;
importcom.edu.domain.User;
 
public class Test{
       public static void main(String[] args) {
              while(true){
                     System.out.println("欢迎来到登录注册界面");
                     System.out.println("1.注册");
                     System.out.println("2.登录");
                     System.out.println("3.退出系统");
                     //创建一个用户操作类对象
                     UserDaoImpl udi = newUserDaoImpl();
                     //创建键盘录入对象
                     Scanner sc = newScanner(System.in);
                     String choice =sc.nextLine();
                     
                     switch (choice) {
                     case "1":
                            System.out.println("欢迎来到注册界面");
                            System.out.println("请输入用户名:");
                            String userName =sc.nextLine();
                            System.out.println("请输入密码:");
                            String password =sc.nextLine();
                            //将用户名和密码封装
                            User user = newUser(userName, password);
                            //调用接口实现类对象的注册方法,将用户名和密码存入集合中
                            udi.regist(user);
                            break;
                     case "2":
                            System.out.println("欢迎来到登录界面");
                            System.out.println("请输入用户名:");
                            String inputUserName= sc.nextLine();
                            System.out.println("请输入密码:");
                            String inputPassword= sc.nextLine();
                            boolean login =udi.isLogin(inputUserName, inputPassword);
                            if (login) {
                                   System.out.println("登录成功");
                                   udi.Game();
                                   break;
                            }else  {
                                   System.out.println("登录失败");
                            }
                            break;
                     case "3":
                     default:
                            System.exit(0);
                            break;
                     }
                            
              }
       }
 
}


登录、注册案例集合实现