パッケージcn.vip。 インポートしたjava.io.Serializable; パブリック クラスユーザーが実装Serializableを{ プライベート文字列名を、 プライベート int型の年齢; プライベート文字列の性別; プライベート文字列のコード; パブリックユーザー(){ スーパー(); } パブリックユーザ(文字列名、int型の年齢、性別文字列、文字コード){ スーパー()。 この .nameの= 名前; この .age = 年齢; この .gender =性別; この .CODE = コード。 } パブリック文字列のgetName(){ 戻り名。 } 公共 ボイドのsetName(文字列名){ この .nameの= 名前。 } 公共 INT getAge(){ 戻り年齢; } 公共 ボイド setAge(int型の年齢){ この .age = 年齢。 } パブリック文字列getGender(){ 戻り性別。 } 公共 のボイドsetGender(文字列性別){ この .gender = ジェンダー。 } パブリック文字列にgetCode(){ 戻りコードと } 公共 ボイドSETCODE(文字コード){ この .CODE = コード。 } }
パッケージcn.vip。 輸入 java.io. * ; 輸入 java.utilの。* ; パブリック クラスBackedGround { 静的スキャナSC = 新しいスキャナ(System.in)。 静的な地図<文字列、ユーザ>マップ= 新しい HashMapの<文字列、ユーザ> (); // 初始化信息 静的{ ユーザーU9 = 新しいユーザー( "nike1"、25、 "男"、 "123456" )。 ユーザーU1 = 新しいユーザー( "ZT1"、20、 "男"、 "123456" ); ユーザーU2 = 新しいですユーザ( "ZT2"、21、 "男"、 "123456" )。 ユーザーU3 = 新しいユーザー( "zt3"、22、 "男"、 "123456" ); ユーザーU4 = 新しいユーザー( "ZT4"、23、 "男"、 "123456" ); ユーザーU5 = 新しいユーザー( "zt5"、24、 "男"、 "123456" ); ユーザーU6 = 新しいユーザー( "zt6"、25、 "男"、 "123456" ); ユーザーU7 = 新しいユーザー( "zt7"、26、 "男"、 "123456" ); ユーザーU8 = 新しいユーザー( "zt8"、27、 "男"、 "123456" ); map.put(u1.getName()、U1)。 map.put(u2.getName()、U2)。 map.put(u3.getName()、U1)。 map.put(u4.getName()、U4)。 map.put(u5.getName()、U5)。 map.put(u6.getName()、U6)。 map.put(u7.getName()、U7)。 map.put(u8.getName()、U8)。 map.put(u9.getName()、U9)。 } // 调用保存的方法来把用户信息存到电脑 公共 ボイド(ユーザーのユーザー)に保存スローのIOExceptionは、IOException { map.put(users.getName()、ユーザ)。 // 序列化 のFileOutputStream fosの= 新しいのFileOutputStream( "F:\\ javaclasszjl \\ ABC" ); ObjectOutputStreamのOOS = 新しいObjectOutputStreamの(FOS); oos.writeObject(マップ); oos.flush(); oos.close(); fos.close(); } // ユーザーのログイン 公共 無効 Denglu()スローにIOException、ClassNotFoundExceptionが{ のSystem.outは。 println( "******************************************" ); システム。 out.printlnを( "自分のユーザー名を入力してください:" ); 文字列名 = sc.next(); System.out.printlnは( "あなたのパスワードを入力してください:" ); String型コード = sc.next(); // デシリアライズセット FileInputStreamのFIS =新新FileInputStreamを( "F:\\ javaclasszjl \\ ABC" ); ObjectInputStreamのOIS = 新しいObjectInputStreamの(FIS); @SuppressWarnings( "未チェック" ) 地図 <文字列、ユーザ>マップ=(地図<文字列、ユーザ> )ois.readObject(); もし(!map.get(名前)= ヌル){ 場合(code.equals(map.get(名).getCode())){ System.out.printlnは( "登录成功、信息如下:" ); System.out.println(String.valueOf(map.get(名))); } 他{ するSystem.out.println( "密码错误" )。 } } 他{ するSystem.out.printlnは( "アカウントが存在しない" ); } ois.close(); fis.close(); } 公共 ボイド zhuce()は、スローのIOException { するSystem.out.println( " ":ユーザー名を入力してください); 文字列名 = sc.next(); System.out.printlnはは( "年齢を入力してください: " ); int型年齢= sc.nextInt(); System.out.printlnはは( "性別を入力してください。 : " ); 文字列性別 = sc.next()。 System.out.println( "あなたのパスワードを入力してください:" ); String型コード = sc.next(); ユーザーUN = 新しい新しいユーザー(名前、年齢、性別、コード); map.put(名前、UN) のSystem.out .println( "正常に登録" ); 保存(UN); } }
パッケージcn.vip。 インポートにjava.io.IOException; パブリック クラスのテスト{ 公共 静的 ボイドメイン(文字列[]引数)がスローにIOException、ClassNotFoundExceptionが{ BackedGround BG = 新しいBackedGround()。 bg.zhuce(); bg.Denglu(); } }
いくつかの問題がまだ未解決