qq_36992027 2016-12-10 09:16 采纳率: 66.7%
浏览 1434
已采纳

新手求解java类的问题,尤其是第二个studentdemo类怎么写?求代码

题目如下

1、创建一个Student,
包含的属性:
(1)name:String,私有
(2)id:String,私有
(3)chinese:float,私有
(4)math:float,私有
(5)english:float,私有
包含的方法:
(1)构造器方法:public Student():初始化姓名为“张三”,学号为“111111”;
(2)构造器方法:public Student(String name,String id);用参数初始化姓名、学号;
(3)对chinese、math、english属性的设定和获得方法;
(4)求总成绩的方法:public void score();
(5)求平均成绩的方法:public void average();
(6)计算三好学生的方法:public void goodstudent():要求:平均成绩是90分以上的同学为三好学生;
2、创建studentDemo类,该类完成的功能:
(1) 用自己的名字、学号创建一个学生类对象,语文、数学和英语成绩通过输入对话框输入,输入的范围设定在“1-100”之间,其他输入无效;
(2)要求打印:你的姓名、学号、语文、数学、语文成绩;
(3)输出你的总成绩、平均成绩;输出你是否被评为“三好学生”。

  • 写回答

1条回答 默认 最新

  • 毕小宝 博客专家认证 2016-12-10 09:54
    关注

    第二个类其实可以不用,直接在第一个类里面写一个main方法测试就可以了。完整代码如下:

     /**
    *
    * @Title:Student
    * @Description:
    * @Company:ultrapower
    * @author:wang_ll
    * @date  :2016年12月10日
     */
    
    /**
     * @author 金涛
     *
     */
    public class Student {
        private String name;
        private String id;
        private float chinese;
        private float math;
        private float english;
    
        public Student(){
            this.name  = "张三";
            this.id = "111111";
        }
    
        public Student(String name,String id){
            this.name = name;
            this.id = id;
        }
    
        public float average(){
            float avg = (chinese+math+english)/3;
            if(avg>90.0){
                System.out.println("当前学生属于三好学生");
            }
            return avg;
        }
    
        public float score(){
            return (chinese+math+english);
        }
    
        public boolean goodstudent(){
            float avg = average();
            return avg>90.0;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getId() {
            return id;
        }
    
        public void setId(String id) {
            this.id = id;
        }
    
        public float getChinese() {
            return chinese;
        }
    
        public void setChinese(float chinese) {
            this.chinese = chinese;
        }
    
        public float getMath() {
            return math;
        }
    
        public void setMath(float math) {
            this.math = math;
        }
    
        public float getEnglish() {
            return english;
        }
    
        public void setEnglish(float english) {
            this.english = english;
        }
    
    
        @Override
        public String toString() {
            return "当前学生信息 [姓名=" + name + ", 学号=" + id + ", 语文成绩=" + chinese + ", 数学成绩=" + math + ", 英语成绩="
                    + english + "]";
        }
    
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入您的姓名:");
            String name = scanner.nextLine();
            System.out.println("请输入您的学号:");
            String id = scanner.nextLine();
            System.out.println("请输入语文成绩:");
            float chinese = scanner.nextFloat();
            System.out.println("请输入数学成绩:");
            float match = scanner.nextFloat();
            System.out.println("请输入英语成绩:");
            float english = scanner.nextFloat();
            Student s = new Student(name,id);
            s.setChinese(chinese);
            s.setEnglish(english);
            s.setMath(match);
            System.out.println(s.toString());
            System.out.println("平均成绩:"+s.average());
        }
    }
    
    

    结果:

     请输入您的姓名:
    王五
    请输入您的学号:
    123
    请输入语文成绩:
    90
    请输入数学成绩:
    98
    请输入英语成绩:
    97
    当前学生信息 [姓名=王五, 学号=123, 语文成绩=90.0, 数学成绩=98.0, 英语成绩=97.0]
    当前学生属于三好学生
    平均成绩:95.0
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料