(Java)一个简单的使用set/get以及this(实例)

本文详细介绍了如何在Java中创建一个Util工具类,展示了如何处理用户名、密码的私有属性及输入验证,包括equals()和==的区别应用。通过实例演示了如何使用这个工具类进行账号设置、密码输入验证,以及错误提示机制。
摘要由CSDN通过智能技术生成

话不多说,看代码

定义一个工具类 Util



import java.util.Scanner;

public class Util {

    //私有化属性
    private String username;
    private String password;
    
    //显示用户名和密码
    public String getUsername() {
        return username;
    }

    public String getPassword() {
        return password;
    }

    //赋值用户名
    public void setUsername(String username) {
        this.username = username;
    }

    //赋值密码
    public void setPassword(String password) {
        this.password = password;
    }
    //返回输入值
    public String EnterIn() {
        Scanner sc = new Scanner(System.in);
        String EnterIn = sc.nextLine();
        return EnterIn;
    }

    //对比密码
    public void check(String pass) {

        Scanner sc = new Scanner(System.in);

        int count = 3;    //设置一下最大错误次数;

        //在字符串比较的时候要使用equals 才能比值,用 == 比的是内存地址;

        if (pass.equals(this.password)) {
            System.out.println("====== 登录成功!======");
        } else {

            //这里循环起来,多输几次;

            while (true) {

                System.out.print("密码错误请重新输入 ");                
                if (count > 0) {
                    System.out.print("( 您还有 " + count + "机会 ): ");        //提示一下
                }

                pass = EnterIn();

                if (pass.equals(this.password)) {
                    System.out.println("====== 登录成功!======");
                    break;
                }
                count--;
                if (count < 1) {
                    System.out.println("登录次数已用完,感谢使用,债见!");
                    break;
                }
            }
        }
    }

}

这里重点说一下 equals() 和 == 在字符串变量当中的区别:

‘==’是用比较两个对象在内存中的首地址;

‘equals()’比较的是字符串中所包含的内容是否相同;

如下例子:



public class Demo01 {
    public static void main(String[] args) {
        String s1 = "abc";
        String s2 = "abc";
//        s1 = new String("abc");
//        s2 = new String("abc");
        if(s1 == s2){
            System.out.println("== :true");
        }else{
            System.out.println("== :false");
        }
        if (s1.equals(s2)){
            System.out.println("equals :true");
        }else{
            System.out.println("equals :false");
        }
    }

}

好了好了,偏题了,我们继续,接下来是如何调用了

看代码。


public class Demo {
    public static void main(String[] args) {

        Util u = new Util();

        System.out.println("====== 欢迎使用 ======");
        System.out.print("请先设置一下账号:");
        u.setUsername(u.EnterIn());
        System.out.print("请先设置一下密码:");
        u.setPassword(u.EnterIn());

        System.out.println("=====================================");
        System.out.println("=== Ok!现在我们来验证一下你输入的密码! ===");
        u.check(u.EnterIn());
        System.out.println("您的账号为 :" + u.getUsername());
        System.out.println("您的密码为 :" + u.getPassword());

    }
}

看结果:

====== 欢迎使用 ======
请先设置一下账号:Handsome
请先设置一下密码:1
=====================================
=== Ok!现在我们来验证一下你输入的密码! ===
2
密码错误请重新输入 ( 您还有 3机会 ): 3
密码错误请重新输入 ( 您还有 2机会 ): 4
密码错误请重新输入 ( 您还有 1机会 ): 2
登录次数已用完,感谢使用,债见!
您的账号为 :Handsome
您的密码为 :1

学习Java的第二天,加油,奥力给!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值