import java.util.Scanner;

/**

* Create Time: 2018-03-17 07:28

*

* @author sheting

*/

public class TestEraserThread {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

while (true) {

System.out.print("请输入名称:");

String name = scanner.next();

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

EraserThread eraserThread = new EraserThread('#');

eraserThread.start();

String password = scanner.next();

eraserThread.setActive(false);

if ("sheting".equals(name) && "123456".equals(password)) {

System.out.println(String.format("欢迎%s", name));

break;

} else {

System.out.println("用户名或密码输入错误!请重新输入");

}

}

}

}

class EraserThread extends Thread {

private boolean active;

private String mask;

public EraserThread() {

this('*');

}

public EraserThread(char maskChar) {

active = true;

mask = "\010" + maskChar;

}

public void setActive(boolean active) {

this.active = active;

}

public boolean isActive() {

return active;

}

@Override

public void run() {

while (isActive()) {

System.out.print(mask);

try {

Thread.sleep(50);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}

运行结果:

说明:在文本模式输出\010表示返回一个字符位置。

在Java1.6之后可以使用console.readPassword()方法隐藏用户输入的文本。

import java.io.Console;

/**

* Create Time: 2018-03-17 09:19

*

* @author sheting

*/

public class Test {

public static void main(String[] args) {

Console console = System.console();

if (console == null) {

System.out.println("Couldn't get Console instance, maybe you're running this from within an IDE?");

System.exit(0);

}

char passwordArray[] = console.readPassword("Enter your secret password: ");

console.printf("Password entered was: %s%n", new String(passwordArray));

}

}

运行结果:

java 输入密码时显示星号6_Java多线程 例子 cmd窗口下 实现输入密码星号显示相关推荐

  1. css设置div从下到上显示,科技常识:css制作从下往上逐渐显示的div

    今天小编跟大家讲解下有关css制作从下往上逐渐显示的div ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关css制作从下往上逐渐显示的div 的相关资料,希望小伙伴们看了有所帮助. htm ...

  2. cmd怎么实现Java你好_java环境配置以及如何在cmd窗口运行java代码

    对于初学java的人来说,电脑的环境配置也许会让你头疼,但只要你认真一些学习,相信对你来说都是OK的啦~ 首先回到桌面,选择我的电脑,单击右键属性,进入高级系统设置,点击环境变量设置.用户变量选择Te ...

  3. Java怎么弹出cmd命令窗口_怎么在java里打开bat文件,并打开cmd窗口执行,举例一个完整代码。...

    展开全部 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; impor ...

  4. layui 下拉框空选项不显示_layui下select下拉框不显示或没有效果

    Layui会对select.checkbox.radio等原始元素隐藏,从而进行美化修饰处理.但这需要依赖于form组件,所以你必须加载 form,并且执行一个实例.值得注意的是:导航的Hover效果 ...

  5. cmd窗口pip显示不是内部或外部命令,也不是可运行的程序或批处理文件

    cmd窗口pip显示不是内部或外部命令,也不是可运行的程序或批处理文件 概述 按照步骤: 1.查看python安装目录\Scripts,有没pip.exe 2.如果没有,官网下载tar包并解压,在解压 ...

  6. Windows下Java调用BAT批处理不弹出cmd窗口

    常规Windows下Java调用BAT方式肯定会弹出cmd窗口 Runtime.getRuntime().exec("cmd.exe /C start D:\\test.bat") ...

  7. cmd窗口太炫酷了,电脑编码软件太多?手把手教你搭建Java环境,利用dos命令实现运行操作

    Java学习打卡:第十四天 内容导航 Java学习打卡:第十四天 内容管理 什么是cmd 写文背景介绍 搭建java环境 首先先下载JDK,java开发工具包 第二步:将压缩包解压到指定目录 第三步: ...

  8. java 多线程列子_java 多线程例子

    编写具有多线程能力的程序经常会用到的方法有: run(), start(), wait(), notify(), notifyAll(), sleep(), yield(), join() 还有一个重 ...

  9. java 去除时间中的PM_在Java中使用SimpleDateFormat(“ a”)显示AM / PM时间标记

    您可以使用SimpleDateFormat(" a")在Java中轻松显示AM / PM时间标记. 首先,要使用Java中的SimpleDateFormat类,请导入以下包.imp ...

最新文章

  1. 512块A100,AlphaFold训练时间从11天压缩至67小时
  2. 【Network Security!】信息的扫描与嗅探
  3. leetcode day2 -- Sort List Insertion Sort List
  4. GDB 修改当前判断函数的返回值(即修改寄存器的值)的方法
  5. 学习笔记二:异步FIFO
  6. 全面认识UML-类图元素(java)
  7. RDLC 报表参数、常量及常用表达式的使用方法(上)
  8. 【华为大咖分享】1.云上开发,代码托管只是第一步(后附PPT下载地址)
  9. DAO层、ENTITY层、SERVICE层、CONTROLLER层
  10. android学习笔记---42_服务的生命周期
  11. Enjoy模板里使用layui模板引擎laytpl
  12. luoguP3403 跳楼机
  13. seaborn的多样化图表及图表样式设置
  14. [转]centos安装oracle
  15. php图片上传为base64,php实现base64图片上传方式实例代码
  16. 4k 显示器放大 150% 和 23寸显示器组双屏抓图问题解决
  17. Matlab Robitic Toolbox学习笔记Day2
  18. bzoj3998/洛谷3975 [TJOI2015]弦论 (后缀自动机)
  19. matlab中求最大因数,matlab最大公约数 三种算法
  20. Grid Garden

热门文章

  1. 利用VBA在EXCLE2010和2007中找回2003式的经典菜单和工具栏
  2. SQL存储过程中QUOTED_IDENTIFIER和ANSI_NULLS
  3. org.hibernate.AnnotationException: mappedBy reference an unknown target entity property
  4. vue-webpack3x -- webpack4x
  5. java设计模式—工厂模式
  6. AndroidStudio_开发工具的设置_布局编辑器的使用---Android原生开发工作笔记74
  7. Hive大数据-Hive的架构---大数据之Hive工作笔记0003
  8. STM32工作笔记0059---独立看门狗实验
  9. IOS工作笔记001---windows下安装通过VmWare来安装IOS系统_并连接上网_来吧超级详细
  10. SpringCloud工作笔记075---SpotBugs介绍--优化java代码的质量