Java面向对象案例之描述专业和学生(4)

类的方法图

  • 学生类:
    • 属性:学号,姓名,年龄,所学习的专业
    • 方法:学习的方法,描述学习状态。描述内容包括姓名、学号、年龄、所学习的专业信息
  • 专业类:
    • 属性:专业编号,专业名称 、学习该专业的人数
    • 方法:介绍情况的方法,描述专业信息。描述内容包括专业名称以及学习该专业的人数
  • 测试类:
    • 创建测试数据

在这里插入图片描述

代码示例

public class TestCase {public static void main(String[] args) {/*** 1、学校开设某专业课程*///构造专业对象Subject one = new Subject();one.setSubjectId("001");one.setSubjectName("计算机科学与应用");/*** 2、学生进入专业学习*///构造学生对象Student liuXin = new Student();liuXin.setStuName("张三");liuXin.setStuAge(16);liuXin.setMySubject(one);liuXin.setStuId("C100101");//调用学习方法liuXin.study();System.out.println("===================================");//构造学生对象Student tianMeng = new Student();tianMeng.setStuId("C100102");tianMeng.setStuName("李四");tianMeng.setStuAge(21);tianMeng.setMySubject(one);//调用学习方法tianMeng.study();System.out.println("===================================");/*** 3、统计本专业的人数*///调用专业的介绍方法*/one.info();}
}/*** 专业类:* 属性:专业编号,专业名称 、学习该专业的人数* 方法:介绍情况的方法,描述专业信息。描述内容包括专业名称以及学习该专业的人数*/
class Subject {private String subjectId;// 专业编号private String subjectName;//班级名称private int number;//班级人数//介绍情况的方法,描述专业信息。描述内容包括专业名称以及学习该专业的人数public void info() {System.out.println(this.subjectName + "专业目前有" + this.number + "名学生");}public String getSubjectId() { return subjectId; }public void setSubjectId(String subjectId) { this.subjectId = subjectId; }public String getSubjectName() { return subjectName; }public void setSubjectName(String subjectName) { this.subjectName = subjectName; }public int getNumber() { return number; }public void setNumber(int number) { this.number = number; }
}/*** 学生类:* 属性:学号,姓名,年龄,所学习的专业* 方法:学习的方法,描述学习状态。描述内容包括姓名、学号、年龄、所学习的专业信息*/
class Student {private String stuId;// 学号private String stuName;// 姓名private int stuAge;// 年龄private Subject mySubject;// 所学习的专业// 学习的方法,描述学习状态。描述内容包括姓名、学号、年龄、所学习的专业信息public void study() {String msg = "我叫" + this.stuName + ",今年" + this.stuAge + "岁\n现在就读于" + this.mySubject.getSubjectName() + "专业,我的学号是" + this.stuId;System.out.println(msg);}//学生年龄大于18岁public void setStuAge(int stuAge) {if (stuAge < 18) {System.out.println("本大学只收取18岁以上的学生");this.stuAge = 18;} elsethis.stuAge = stuAge;}//每产生一名学员,专业人数加1public void setMySubject(Subject mySubject) {//获取该专业已有学生人数int number1 = mySubject.getNumber();//修改学生人数number1++;mySubject.setNumber(number1);//设置专业信息this.mySubject = mySubject;}public String getStuId() { return stuId; }public void setStuId(String stuId) { this.stuId = stuId; }public String getStuName() { return stuName; }public void setStuName(String stuName) { this.stuName = stuName; }public int getStuAge() { return stuAge; }public Subject getMySubject() { return mySubject; }
}

运行截图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/543921.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Day66:WEB攻防-Java安全SPEL表达式SSTI模版注入XXEJDBCMyBatis注入

目录 JavaSec搭建 Hello-Java-Sec搭建 Java安全-SQL注入-JDBC&MyBatis Java安全-XXE注入-Reader&Builder Java安全-SSTI模版-Thymeleaf&URL Java安全-SPEL表达式-SpringBoot框架 知识点&#xff1a; 1、Java安全-SQL注入-JDBC&MyBatis 2、Java安全-XXE注…

RabbitMQ学习总结-基础篇

1..RabbitMQ 本身是一个消息中间件&#xff0c;在服务应用中&#xff0c;可解决高性能&#xff0c;高并发&#xff0c;高应用的问题&#xff0c;极大程度上解决了应用的性能问题。 2.MQ的使用分为生产者和消费者&#xff0c;生产者生产消息&#xff0c;消费者去消费消息。 3.…

一瓶5.86万,听花酒什么来头?

听花酒&#xff0c;到底什么来头&#xff1f; 宣称有提升免疫力、改善睡眠、保障男性功能、调节生理紊乱、抗衰老等功效的听花酒&#xff0c;被315晚会曝光了。 相关话题词随即冲上了热搜。之后&#xff0c;售价最高达58600元的听花酒被京东、拼多多、淘宝等电商平台火速下架…

git pull 报错: 在签出前,请清理存储库工作树

问题&#xff1a; 使用vscode 用git 拉取代码&#xff0c;提示&#xff1a;在签出前&#xff0c;请清理存储库工作树** 原因&#xff1a; git仓库上的代码和本地代码存在冲突了所以会报这个报错。 解决办法&#xff1a; ①git stash 先将本地修改存储起来 ②git pull 拉取远…

<AI大模型学习>——《人工智能AI》

&#xff1c;AI大模型学习&#xff1e;——《人工智能AI》 一、AI大模型通识 1.AI介绍 人工智能&#xff08;Artificial Intelligence&#xff09;&#xff0c;英文缩写为AI。 是新一轮科技革命和产业变革的重要驱动力量&#xff0c; 是研究、开发用于模拟、延伸和扩展人的智…

vue2两个数组嵌套循环返回的新数组item顺序要一致

const newArr [] arr2.forEach(item > { this.allOriC.forEach(item2 > { if (item.dataIndex item2.dataIndex) { newArr.push(item2) } }) })优化下这个代码&#xff0c;返回的新数组item顺序要一致 可以使用JavaScript的​​Array.prototype.map()​​​和​​Arra…

LoadRunner性能测试基本步骤

前言 本文旨在指导初学者使用LoadRunner进行基础的性能测试。 我们在接到一个性能测试任务的时候&#xff0c;需要从以下几点考虑&#xff1a;我们的测试对象是什么&#xff0c;测试要求是什么&#xff0c;测试环境怎么部署的&#xff0c;业务规模如何&#xff0c;哪些业务点是…

【b站咸虾米】2 Vue基础(上) 2021最新Vue从基础到实例高级_vue2_vuecli脚手架博客案例

课程地址&#xff1a;【2021最新Vue从基础到实例高级_vue2_vuecli脚手架博客案例】 https://www.bilibili.com/video/BV1pz4y1S7bC/?share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 目录 2 Vue基础 上 2.0 补充知识 2.0.1 Vue实例的作用范围 2.0.2 t…

【视频图像取证篇】模糊图像增强技术之深度转化类滤波场景应用小结

【视频图像取证篇】模糊图像增强技术之深度转化类滤波场景应用小结 模糊图像增强技术之深度转化类滤波场景应用小结—【蘇小沐】 &#xff08;一&#xff09;转化类滤波器&#xff08;Convert to filter&#xff09; 1、灰度滤波器&#xff08;Gray filter&#xff09; 灰度…

【C++】string进一步介绍

个人主页 &#xff1a; zxctscl 如有转载请先通知 文章目录 1. 前言2. 迭代器2.1 反向迭代器2.2 const对象迭代器 3. Capacity3.1 size和length3.2 max_size3.3 capacity3.4 clear3.5 shrink_to_fit &#xff08;了解即可&#xff09;3.6 reserve3.7 resize 4. Element access4…

实验室管理系统 |基于springboot框架+ Mysql+JSP技术+Tomcat的实验室管理系统 设计与实现(可运行源码+数据库+设计文档)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 目录 用户后台功能模块 用户后台管理 管理员功能登录前台功能效果图 系统功能设计 数据库E-R图设计 lunw…

宜搭faas服务器获取accessToken

可以用faas服务器的OpenAPIUtil.getCustomAccessTokenThenCache&#xff08;Client ID,Client Secret&#xff09;就可以获取 至于获取这个Client ID&#xff0c;Client Secret 就需要在钉钉开放平台创建一个应用 然后在这个应用的基础信息里面有 注意的是&#xff1a;如果需要…