MineralTea 2017-04-06 13:54 采纳率: 0%
浏览 1141
已采纳

一个关于java的编程问题

在包baidu.com中定义类User:
属性:用户名(公开),密码(私有)
方法:
获取用户名,设置用户名,获取密码,设置密码;
在包sina.com中定义类Manager:
属性:User类对象
方法:
构造方法:输入用户名和密码,创建User类对象赋值给属性。
更改密码:首先要求用户输入原密码,输入正确后输入两次新密码,输入相同则更改用户密码为新输入的密码,两次输入不同要求用户重新输入,直到两次输入的密码相同。
在main方法中,创建Manager类对象,更改用户密码。

不是很会做,求大神赐教,最好能多点解释,谢谢了

  • 写回答

4条回答 默认 最新

  • 千杯不醉476 2017-04-07 01:32
    关注

    User类:

    package baidu.com;

    public class User {

        public String uname;
        private String upass;
        public String getUname() {
            return uname;
        }
        public void setUname(String uname) {
            this.uname = uname;
        }
        public String getUpass() {
            return upass;
        }
        public void setUpass(String upass) {
            this.upass = upass;
        }
        public User(String uname, String upass) {
            super();
            this.uname = uname;
            this.upass = upass;
        }
        @Override
        public String toString() {
            return "User [uname=" + uname + ", upass=" + upass + "]";
        }
    

    }

    Manager类:

    package sina.com;

    import java.util.Scanner;

    import baidu.com.User;

    public class Manager {

    private User user;
    
    public Manager(User user) {
        super();
        this.user = user;
    }
    
    
    
    public User getUser() {
        return user;
    }
    
    
    
    public void setUser(User user) {
        this.user = user;
    }
    
    public void changepass(){
        Scanner cin = new Scanner(System.in);
        System.out.println("请输入原密码");
        if(cin.next().equals(user.getUpass())){
            System.out.println("原密码输入正确");
            while(true){
            System.out.println("请输入新密码:");
            String temp = cin.next();
            System.out.println("请再次输入新密码:");
            if(cin.next().equals(temp)){
                this.user.setUpass(temp);
                break;
                }
            else{
                System.out.println("两次密码不一致");
                }
            }
        }
        else{
                System.out.println("原密码输入错误");
            }
    }
    

    }

    主类:

    package com.main;

    import java.util.Scanner;

    import baidu.com.User;
    import sina.com.Manager;

    public class Test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
            Scanner cin = new Scanner(System.in);
            System.out.println("请输入用户名:");
            String uname = cin.next();
            System.out.println("请输入密码:");
            String upass = cin.next();
            Manager manager = new Manager(new User(uname, upass));
            System.out.println("初始用户信息为:"+manager.getUser().toString());
            manager.changepass();
            System.out.println("结果用户信息为:"+manager.getUser().toString());
    
    }
    

    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题
  • ¥15 Ubuntu20.04无法连接GitHub
  • ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
  • ¥15 向数据表用newid方式插入GUID问题
  • ¥15 multisim电路设计
  • ¥20 用keil,写代码解决两个问题,用库函数
  • ¥50 ID中开关量采样信号通道、以及程序流程的设计
  • ¥15 U-Mamba/nnunetv2固定随机数种子
  • ¥30 C++行情软件的tick数据如何高效的合成K线