JAVA在控制台输入密码时 怎样能不显示密码。

JAVA在控制台输入密码时 怎样能不显示密码。,第1张

使用java.io.Console类 可以实现隐藏输入[稍微注意的是 JDK1.6才加入的]

查看的API文档

代码

import java.io.Console  

public class InputTest {  

    public static void main(String[] args){

     System.out.print("请输入密码:")

        Console con = System.console()

        String pswd = new String(con.readPassword())//因为读取的是字符数组,所以需要用new String()来把字符数组转成字符串  

        System.out.println("你刚刚输入的密码是"+pswd)  

    }  

}

控制台测试

如果你开发的是java窗口应用程序,那么输入密码的文件框使用:JPasswordField jPasswordField = new JPasswordField()

如果你是做的jsp开发,那么输入密码的文本框使用:<input type ="password" name = "password"/>

这样输入的密码就会被.......代替。

import java.awt.*

import java.awt.event.*

public class myFrame3 extends Frame implements ActionListener {

Button bnSure

Button bnReset

TextField user

TextField pass

public myFrame3(){

super("用户身份验证")

Label username = new Label("用户名")

Label password = new Label("密码")

user = new TextField(10)

pass = new TextField(10)

pass.setEchoChar('*')//这里设置符号 使密码不可见

bnSure = new Button("确定")

bnReset = new Button("重置")

setVisible(true)

setBounds(100,100,200,200)

setLayout(new FlowLayout())

add(username)add(user)add(password)add(pass)add(bnSure)add(bnReset)

bnSure.addActionListener(this)

bnReset.addActionListener(this)

}

public void actionPerformed (ActionEvent e){

String users = new String("1234")

String passw = new String("1234")

String suser = user.getText()

String pas = pass.getText()

if(e.getActionCommand().equals("确定"))

{

if(passw.equals(pas)&&users.equals(suser))

{

user.setText("Welcome")

pass.setText("")

}

else

{

user.setText("用户名或密码错误")

pass.setText("")

}

}

else{

user.setText("")

pass.setText("")

}

}

public static void main(String args[]){

myFrame3 a = new myFrame3()

a.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

e.getWindow().dispose()

}

})

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8070494.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存