来自一个萌新的小小项目---用户登录注册功能
以下是我的一个小小的想法 请大佬们提出些意见 我好改比如我一想到什么问题都是想用判断解决 这个。。。。。。。。。是不是个坏习惯。。。还有就是该项目在Elipse能够跑起来 但是编译出来 就找不到主类。。。。。。https://wx2.sinaimg.cn/mw690/0060GsgSgy1fxwtvs03yhj30kw0k7my8.jpghttps://wx2.sinaimg.cn/mw690/0060GsgSgy1fxwtvlr6u3j30z50ct0ux.jpg
代码如下:
package xyz.mouzhai;
/**
* 一个未完成的登录和注册项目
* @author 某宅
*
*/
import java.util.Scanner;
//主类 负责调用其他类方法
public class Test01 {
public static void main(String[] args) {
Index i = new Index();
i.index(); //调用首页显示登录或者注册功能
}
}
/**
* 登录注册功能类
*/
class Index{
Scanner input = new Scanner(System.in);
void index() {
System.out.println("请选择功能:");
System.out.println(" 1:登录");
System.out.println(" 2:注册");
int a = 0; //初始化a
System.out.print("请输入数字选择功能:");
a = input.nextInt(); //输入数字判断是登录还是注册
//A为1就是登录
if(a == 1) {
Login log = new Login(); //创建登录对象
int i = log.Login(); //调用Login的log方法 返回值赋值给i
//判断登录返回值为0还是1 0就进入软件1就调用自身方法 继续登录注册
if(i == 0) {
System.out.println("软件界面!");
}else {
new Index().index();
}
}else if(a == 2) {
}else {
System.out.println("输入的什么玩意 滚蛋!");
}
}
}
/**
* 用于判断用户名和密码是否正确 返回0或1
*/
class Login {
Scanner input = new Scanner(System.in);
String admin = "admin"; //管理员账号
String passwd = "admin"; //管理员密码
String username; //用户输入账号
String password; //用户输入密码
int Login() {
System.out.print("请输入用户名:");
username = input.nextLine();
System.out.print("请输入密码:");
password = input.nextLine();
//判断用户名和用户名密码 是否和管理员相同
if((username.equals(admin))&&(password.equals(passwd))) {
System.out.println("登录成功!");
return 0; // 成功返回0
}else {
System.out.println("账号或密码错误!请重试!");
return 1; // 错误返回1
}
}
}
/**
* 注册类还没写完。。准备调用数组保存
* 进行判断数组是否有此用户名或密码没有就进行保存 有就报错
* 登录再改成判断数组是否有账号和密码 有就进入软件页面 没有就报错
*/
class signin{
} 厉害 找不到主类的话应该是打包方式不对,缺少了配置和一些文件,你可以学习一下maven打包方式,还有就是当判断过多的时候可以考虑把这些判断提出一个方法来专门做这件事,这也符合java中的单一职责原则,哈哈,推荐你可以看看《代码整洁之道》 ,这本书讲的很不错,对于重构代码很有帮助。
页:
[1]