登錄、註冊案例集合實現
阿新 • • 發佈:2017-05-11
登錄註冊
登陸註冊案例分析: 我們現在寫代碼需要面向對象,我們必須先找到能完成某個功能的類,接著調用裏面的方法完成它 登陸註冊案例中的類: 用戶類 成員變量:用戶名,密碼 成員方法:登陸,註冊功能 測試類 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; } } } }
登錄、註冊案例集合實現