练习(6)
来源:互联网 发布:欧美衣服淘宝 编辑:程序博客网 时间:2024/05/17 06:27
按要求一步步完成代码,看完每个步骤的说明后再写代码
A, 写一个UI类,并在UI类中实现以下两个方法
1. public void printMessage(String message);
它将方法中的参数打印到控制台
2. public String readMessage();
此方法返回一个从控制台读入的字符串(读入字符串的方法:Scanner sc = new Scanner(System.in); String s = sc.nextLine();return s;)。
B, 写出UI类的两个子类UserLoginUI和AdminLoginUI。
C, 分别在UserLoginUI和AdminLoginUI中实现login()方法:
void login(){//这里加入代码…}
login方法在控制台打印登录界面,提示用户输入用户和密码,并能接收用户输入的用户名和密码,在UserLoginUI的login方法中当用户名和密码为(user, pass)时提示用户登录成功,否则提示登录失败。在AdminLoginUI的login方法中当用户名和密码为(admin, pass)时提示管理员登录成功,否则提示登录失败。login方法使用继承过来的printMessage, readMessage方法来打印和读入数据。
注意字符串的比较方式:”user”.equals (str); 而不要用:str == “user”; (后面会讲解原因)
D, 新建一个Main类,在类中的Main方法中分别实现对UserLoginUI和AdminLoginUI两个类中login方法的测试
E, 尝试以下调用:
UI ui = new UserLoginUI();
ui.login();
测试编译是否能够通过,说明原因
F, 在UI中加入以下方法定义:
void login(){System.out.println(“UI login”); }
再重试步骤E的操作,写出原因。
编译后运行程序,写出运行结果和原因
package test2;import java.util.*;//创建UI类 class UI { public UI(){} public void printMessage(String message){ System.out.println(message); } public String readMessage(){ Scanner sc = new Scanner(System.in); String s = sc.nextLine(); return s; } void login(){ System.out.println("UI login"); }}
package test2;//创建子类AdminLoginUI来继承UI class AdminLoginUI extends UI { public void login(){ System.out.println("请输入用户名:"); String name=readMessage(); System.out.println("请输入密码:"); String password=readMessage(); if(name.equals("admin")&&password.equals("pass")){ System.out.println("登录成功!"); }else{ System.out.println("登录失败!"); } }}
package test2;//创建子类UserLoginUI来继承UI class UserLoginUI extends UI { public void login(){ System.out.println("请输入用户名:"); String name=readMessage(); System.out.println("请输入密码:"); String password=readMessage(); if(name.equals("user")&&password.equals("pass")){ System.out.println("登录成功!"); }else{ System.out.println("登录失败!"); } }}
package test2;//运行的主文件public class Main { public static void main(String[] args){ UserLoginUI a=new UserLoginUI(); a.login(); AdminLoginUI b=new AdminLoginUI(); b.login(); /*UI ui = new UserLoginUI(); ui.login();ui的类型是UI类,UI没有login()方法*/ UI ui = new UserLoginUI(); ui.login(); }}
- //2.11练习.练习6(2).p37
- html练习(6)
- 贺利坚练习(6)
- Linux练习(6)
- 练习(6)
- Java练习--继承(6)
- 练习6
- 练习6
- 练习6
- 练习6
- 练习6
- 练习6
- 【SICP练习】6 练习1.10
- java小练习(6)--排序 problem
- (12)21.2.5 并发 练习 6
- 泛型练习6(方法)
- 通过鼠标拖拽来画矩形(练习6)
- python 实验6 字符串练习(二)
- macaca之zfb
- Java程序员不可不知的几个网站,你去过几个?
- update通用生成SQL语句方法
- 初次尝试Maven+logj2.xml 配置
- 关于浏览器的请求数据到达后台乱码问题
- 练习(6)
- Item 3:尽可能使用const【effective C++读书笔记】
- java_01.1
- ligerUI框架怎样调节文本框下拉框宽度高度等属性
- 称雄中国政务云?那一定是个“狠角色”
- 散装食品的经营之道,从哪方面入手?
- angular编译出错解决办法Angular Compiler was detected but it was an instance of the wrong class.
- 欢迎使用CSDN-markdown编辑器
- 网易2017春招编程题:分饼干 [python]