面向对象--带参数传递(刚入门看了都说好)

面向对象--带参数传递(刚入门看了都说好),第1张

大家好,我是北鹤。很高兴又和各位见面了。

今天小编就简单带大家通过一个 用户名与密码 的案例带大家了解下面向对象中的带参数的方法传递,希望可以给刚入门的小伙伴一些灵感(喜欢不忘点赞+关注噢)

测试类代码如下:

package shili;
/**
 * 测试类
 *
 *
 */

import java.util.Scanner;

public class demo {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        //实例化对象,将 admin 的地址赋给 变量admin。
        admin admin = new admin();

        /**
         * 更改用户名与密码
         */
        System.out.println("请登录账号:");
        String name = input.next();
        System.out.println("请输入密码:");
        int password = input.nextInt();

        //把输入的用户名与密码传参到 admin 类的 admin 方法中
        admin.admin(name, password);

    }
}

管理员类代码如下:

package shili;



import com.sun.deploy.security.SelectableSecurityManager;

import java.util.Objects;
import java.util.Scanner;

public class admin {
    //初始化用户名与密码
    String name = "admin";
    int passWord = 123456;
    Scanner input = new Scanner(System.in);

    public void admin(String name, int passWord) {

        //使用 equels()判断输入的用户名与密码是否一致

        /**
         * 如果用户名和密码与初始化给定的相同则更新用户名与密码
         */
        if ((this.name.equals(name)) && (Objects.equals(this.passWord, passWord))) {
            System.out.println("请输入新的用户名与密码:");
            String newName = input.next();

            int newPassWord = input.nextInt();

            System.out.println("更改成功,新的用户名为:" + newName + ",新的密码为:" + newPassWord);
        }

            //如果用户名或者密码中有一个输入与初始化给定的不一样,则重新输入
        while (!(this.name.equals(name)) || !(Objects.equals(this.passWord, passWord))) {
            System.out.println("输入错误!请重新输入登陆账号!");
            String nname = input.next();
            int ppassWord = input.nextInt();

            /**
             * 再次判断输入内容与给定的初始化值是否一致,一致则进行新用户名与密码的更改
             */
            if ((this.name.equals(nname)) && (Objects.equals(this.passWord, ppassWord))) {

                System.out.println("登录成功!请输入新用户名与密码:");
                String namee = input.next();
                int password = input.nextInt();
                System.out.println("更改成功,新的用户名为:" + namee + ",新的密码为:" + password);
                break;
            }

            /*
            如果用户名或密码一直输入错误,则可以手动退出循环
             */
            int n;
            System.out.println("账号或密码错误,退出请按3,输入其它数字则重新登录:");
            n = input.nextInt();

            if (n == 3) {
                break;
            } else {
                continue;
            }
        }
    }
}

运行的3种情况结果如下:

一次性输入账号和密码登录成功 

多次输入用户名和密码登录成功

忘记用户名或密码手动退出 

​​​​​​​

 

  如果还有哪些地方小编写得不明白的欢迎留言与私信噢。关注北鹤,与你一同成长!

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

原文地址: https://outofmemory.cn/langs/727577.html

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

发表评论

登录后才能评论

评论列表(0条)

保存