Java方法调用应用操作题
问:一个景区根据游人的年龄收取不同价格的门票。请编写游人类,根据年龄段决定能够购买的门票价格并输出
思路:写类的属性很简单,定义姓名和年龄即可
方法考的难一些,可以先做一下程序分析,把思路捋清,这样才能用代码实现出来。这里需先定好不同年龄段收取的票价,然后套用循环语句去做,与此同时也不要忽略细节。

类
public class Ticket {
String name;
int age;
public void BuyT() {
do {
Scanner input = new Scanner(System.in);
System.out.print("请输入姓名: ");
name = input.next();
if(name.equals("n")){ //当输入姓名为n时,输出退出程序
System.out.println("退出程序!");
return; //退出程序即跳出方法(语句不懂易混淆见上一篇文章)
}
System.out.print("请输入年龄: ");
age = input.nextInt();
if (age < 10) {
System.out.println(name + "的年龄为" + age +
",门票免费!");
} else { //我这里定的是年龄小于10门票免费,其余一律是20元
System.out.println(name + "的年龄为" + age +
",门票价格为:20元");
}
} while (!name.equals("n")); //当输入不为n时,执行操作
}
}
测试类
public class TestTicket {
public static void main(String[] args) {
Ticket vistor=new Ticket();
vistor.BuyT();
}
}
在测试类里我们需要调用方法,而 在不同类中调用Ticket类里的方法,需要先在此类里new一个对象,然后通过对象名.方法名的方式去调用方法。
问:模拟实现用户密码管理:输入旧的用户名和密码,如果正确,方有权限更新;从键盘获取新的密码,进行更新
思路:用户类:用户名、密码、修改密码()、判断输入是否正确
测试类:

用户类
public class Password {
String userName;
int password;
Scanner input=new Scanner(System.in);
boolean isCorrect(){ //此方法是为了求出方法值
System.out.println("请输入用户名:");
String name=input.next();
System.out.println("请输入密码:");
int pwd=input.nextInt();
if(name.equals(userName)&&pwd==password){
return true;
}
return false;
}
public void changeWord(){
boolean result=isCorrect(); //方法的返回值赋给result
if(result) {
System.out.println("请输入新密码:");
password = input.nextInt();
System.out.println("修改密码成功,您的新密码为:"
+password);
}else {
System.out.println("用户名和密码不匹配!您没有权限更新管理员信息。");
}
}
}
测试类
public class PasswordTest {
public static void main(String[] args) {
Password p=new Password();
p.userName="admin";
p.password=12345;
p.changeWord();
}
}
PS:若Java面向对象这关于 类和对象的知识点概念有不清楚的地方,也可看我前面的文章,感谢观看~