A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.itheima;

import java.util.Scanner;

public class Test8 {

        /**第八题
         * 8、 声明类Person,包含2个成员变量:name、age。定义函数sayHello(),调用时输出:我叫***,今年***岁了。声明类Chinese继承Person。
         * @param args
         */
        public static class Person{
                @SuppressWarnings("unused")
                private String name;
                private int age;
                public void sayHello()
                {
                        System.out.println("请输入您的名字:");
                        //初始化接收键盘输入的scanner变量
                        Scanner userName = new Scanner(System.in);
                        //获取用户输入的名字
                        String name = userName.nextLine();
                        //将获取到得名字来初始化name变量
                        this.name = name;
                       
                        System.out.println("您输入的名字是:" + name + "\n请输入您的年龄:");
                        while(true)
                        {
                                //初始化接收键盘输入的scanner变量
                                Scanner userAge = new Scanner(System.in);
                                //获取用户输入的年龄
                                String strAge = userAge.nextLine();
                                int intAge;
                                //该异常会在输入的不是数字的情况下进入catch异常处理
                                try {
                                        //将字符型变量强制转换成int型,如果字符型变量不是数字则会抛出异常
                                        intAge = Integer.valueOf(strAge);
                                        this.age = intAge;
                                        System.out.println("您输入的年龄是:" + age);
                                        if(age > 120)
                                        {
                                                System.out.println("您输入的年龄是" + age + "。您输入的年龄超出了正常范围,请核对重新输入:");
                                                continue;
                                        }
                                        else
                                        {
                                                System.out.println("我叫" + name + ",今年" + age +"岁了。");
                                                break;
                                        }
                                } catch (Exception e) {
                                        // TODO Auto-generated catch block
                                        System.out.println("您输入的年龄不是年龄,请重新输入:");
                                }
                        }       
                }
        }
        public class Chinese extends Person{}
        static Person person = null;
        public static void main(String[] args) {
                person = new Person();
                person.sayHello();
        }
}

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1 分享了好多

查看全部评分

2 个回复

正序浏览
看看了。哈哈
回复 使用道具 举报
很好,但是总觉得代码还不够简洁优化。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马