Java类对象的操作

 

1.Student.java
package Message;
public class Student {
    private String stuName; // 姓名
    private int money; // 存款余额
    private String studentID; // 学号
    private int age; // 年龄
    private String address; // 地址
    private String phoneNumber; // 电话号码
    private String major; // 专业
    private String admissionYear; // 入学年份
    private boolean isRegistered; // 是否已注册
    private boolean isEnrolled; // 是否已入学
    // 构造方法
    public Student(String stuName, int money, String studentID, int age, String address, String phoneNumber,
                   String major, String admissionYear) {
        this.stuName = stuName;
        this.money = money;
        this.studentID = studentID;
        this.age = age;
        this.address = address;
        this.phoneNumber = phoneNumber;
        this.major = major;
        this.admissionYear = admissionYear;
        this.isRegistered = true;
        this.isEnrolled = true;
    }
    // Getter 和 Setter 方法
    public String getStuName() {
        return stuName;
    }
    public void setStuName(String stuName) {
        this.stuName = stuName;
    }
    public int getMoney() {
        return money;
    }
    public void setMoney(int money) {
        this.money = money;
    }
    public String getStudentID() {
        return studentID;
    }
    public void setStudentID(String studentID) {
        this.studentID = studentID;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    public String getPhoneNumber() {
        return phoneNumber;
    }
    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }
    public String getMajor() {
        return major;
    }
    public void setMajor(String major) {
        this.major = major;
    }
    public String getAdmissionYear() {
        return admissionYear;
    }
    public void setAdmissionYear(String admissionYear) {
        this.admissionYear = admissionYear;
    }
    public boolean isRegistered() {
        return isRegistered;
    }
    public void setRegistered(boolean registered) {
        isRegistered = registered;
    }
    public boolean isEnrolled() {
        return isEnrolled;
    }

    public void setEnrolled(boolean enrolled) {
        isEnrolled = enrolled;
    }
    public void register() {
        isRegistered = true;
        System.out.println(stuName + "已完成报到注册");
    }
    public void payFee() {
        if (money >= 6000) {
            money -= 6000;
            System.out.println(stuName + "已支付学费,剩余存款:" + money + "元");
        } else {
            System.out.println(stuName + "的存款不足,无法支付学费。");
        }
    }
}

2.Class.java
package Message;
import java.util.ArrayList;
public class Class {
    private String className; // 班级名
    private int studentCount; // 学生人数
    private ArrayList<String> studentRoster; // 学生花名册
    private int maxCapacity; // 班级最大容量
    private String teacherName; // 班主任姓名
    // 构造方法
    public Class(String className, int maxCapacity, String teacherName) {
        this.className = className;
        this.studentCount = 0;
        this.studentRoster = new ArrayList<>();
        this.maxCapacity = maxCapacity;
        this.teacherName = teacherName;
    }
    // Getter 和 Setter 方法
    public String getClassName() {
        return className;
    }
    public void setClassName(String className) {
        this.className = className;
    }
    public int getStudentCount() {
        return studentCount;
    }
    public void setStudentCount(int studentCount) {
        this.studentCount = studentCount;
    }
    public int getMaxCapacity() {
        return maxCapacity;
    }
    public void setMaxCapacity(int maxCapacity) {
        this.maxCapacity = maxCapacity;
    }
    public String getTeacherName() {
        return teacherName;
    }
    public void setTeacherName(String teacherName) {
        this.teacherName = teacherName;
    }
    public void registerStudent(String studentName) {
        if (studentCount < maxCapacity) {
            studentCount++;
            studentRoster.add(studentName);
            System.out.println(studentName + "已注册到班级" + className);
        } else {
            System.out.println("班级" + className + "已满员,无法注册更多学生。");
        }
    }
    public void printRoster() {
        System.out.println("班级" + className + "的花名册:");
        for (String student : studentRoster) {
            System.out.println(student);
        }
    }
}

3.School.java
package Message;
public class School {
    private String universityName; // 校名
    private String universityLocation; // 校址
    private int yearFounded; // 创校年份
    private String deanName; // 校长姓名
    private int studentCapacity; // 学校容量
    // 构造方法
    public School(String universityName, String universityLocation,
                  int yearFounded, String deanName, int studentCapacity) {
        this.universityName = universityName;
        this.universityLocation = universityLocation;
        this.yearFounded = yearFounded;
        this.deanName = deanName;
        this.studentCapacity = studentCapacity;
    }
    // Getter 和 Setter 方法
    public String getUniversityName() {
        return universityName;
    }
    public void setUniversityName(String universityName) {
        this.universityName = universityName;
    }
    public String getUniversityLocation() {
        return universityLocation;
    }
    public void setUniversityLocation(String universityLocation) {
        this.universityLocation = universityLocation;
    }
    public int getYearFounded() {
        return yearFounded;
    }
    public void setYearFounded(int yearFounded) {
        this.yearFounded = yearFounded;
    }
    public String getDeanName() {
        return deanName;
    }
    public void setDeanName(String deanName) {
        this.deanName = deanName;
    }
    public int getStudentCapacity() {
        return studentCapacity;
    }

    public void setStudentCapacity(int studentCapacity) {
        this.studentCapacity = studentCapacity;
    }
}

4.StudentDemo.java
package Message;
public class StudentDemo {
        public static void main(String[] args) {
            // 创建学校对象
            School school = new School("xxx", "xxx",
                    1978, "xxx", 21000);
            // 创建班级对象
            Class classA = new Class("计算机科学与技术", 60, "王老师");
            // 创建学生对象
            Student student1 = new Student("xx", 10000, "2021",
                    20, "xxx", "18827014004", "计算机科学与技术", "2021");
            Student student2 = new Student("李华", 10000, "22006JS4204",
                    19, "xxxx", "18827014003", "计算机科学与技术", "2021");
            // 输出学校信息
            System.out.println("学校信息:");
            System.out.println("校名: " + school.getUniversityName());
            System.out.println("校址: " + school.getUniversityLocation());
            System.out.println("创校年份: " + school.getYearFounded());
            System.out.println("校长姓名: " + school.getDeanName());
            System.out.println("学校容量: " + school.getStudentCapacity());
            // 输出班级信息
            System.out.println("\n班级信息:");
            System.out.println("班级名: " + classA.getClassName());
            System.out.println("班主任姓名: " + classA.getTeacherName());
            System.out.println("班级容量: " + classA.getMaxCapacity());
            // 学生注册
            student1.register();
            student2.register();
            // 学生支付学费
            student1.payFee();
            student2.payFee();
            // 输出学生信息
            System.out.println("\n学生信息:");
            System.out.println("学生1姓名: " + student1.getStuName());
            System.out.println("学生1年龄:"+student1.getAge());
            System.out.println("学生1地址: "+student1.getAddress());
            System.out.println("学生1电话号码: "+student1.getPhoneNumber());
            System.out.println("学生1存款余额: " + student1.getMoney());
            System.out.println("学生1是否已注册: " + student1.isRegistered());
            System.out.println("学生1是否已入学: " + student1.isEnrolled());
            System.out.println("学生1专业:"+student1.getMajor());
            System.out.println("学生1学号:"+student1.getStudentID());
            System.out.println("学生1入学年份:"+student1.getAdmissionYear());
            System.out.println("\n学生2姓名: " + student2.getStuName());
            System.out.println("学生2年龄:"+student2.getAge());
            System.out.println("学生2地址: "+student2.getAddress());
            System.out.println("学生2电话号码: "+student2.getPhoneNumber());
            System.out.println("学生2存款余额: " + student2.getMoney());
            System.out.println("学生2是否已注册: " + student2.isRegistered());
            System.out.println("学生2是否已入学: " + student2.isEnrolled());
            System.out.println("学生2专业:"+student2.getMajor());
            System.out.println("学生2学号:"+student2.getStudentID());
            System.out.println("学生2入学年份:"+student2.getAdmissionYear());
        }
    }

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

同名称的文件如何批量指定到同名称文件夹中保存

在日常工作中相信大家都是会遇到文件或文件名修改名称、或文件批量归类保存等等&#xff0c;相对来文件或文件夹批量重命名会比较好操作&#xff0c;如果遇到按文件名称批量到指定同名称文件夹中保存呢&#xff1f;这可要什么来实现呢&#xff0c;到底能不能实现出来。接下来大…

Go1.21.0 程序启动过程

版本说明 Go 1.21.0操作系统&#xff1a;Windows11 Intel64 结论先行 开发关注版 在 Go 语言中&#xff0c;启动顺序通常如下&#xff1a; 导入包&#xff1a;首先&#xff0c;Go 编译器按照源文件中的 import 语句导入所有需要的包。初始化常量和变量&#xff1a;接着&am…

SpringBoot自定义参数校验注解

为什么要自定义校验注解? 当现有的注解NotEmptyPatternNotNullURl等不能满足业务需求的时候,我们需要手动自定义一个注解 操作步骤 新建一个anno的包 单击右键添加注解 编写state注解 创建validation文件夹 编写校验规则 然后给上面的State注解指定这个校验规则 使用注解…

程序的机器即代码表示

高级语言与机器级代码之间的对应 x86汇编语言指令基础 mov指令 mov目的操作数d,源操作数s destination:目的地 source:来源、发源地 #mov指令功能: 将源操作数s复制到目的操作数d所指的位置 mov eax, ebx #将寄存器ebx的值复制到寄存器eax mov eax, 5 #将立即数5复制到寄存器…

【LeetCode刷题-二叉树】--110.平衡二叉树

110.平衡二叉树 方法一&#xff1a;自顶向下递归 对于当前遍历到的节点&#xff0c;首先计算左右子树的高度&#xff0c;如果左右子树的高度差是否不超过 111&#xff0c;再分别递归地遍历左右子节点&#xff0c;并判断左子树和右子树是否平衡。这是一个自顶向下的递归的过程。…

GoWeb开发框架gin-基础路由使用

文章目录 1.安装并写一个demo2.配置GoLang热加载脚手架3.配合net/http使用完整示例4.返回值4.1String返回值4.2Json返回值4.3struct结构体返回值4.4jsonp返回值4.5XML返回值 5.接收前端传过来的参数5.1get请求传值5.2form表单传值5.3接收结构体5.4路由地址传参 6.完整代码 1.安…

00.仿简道云公式实战-学前须知

简道云介绍&#xff1a;简道云作为一款个性化应用搭建工具&#xff0c;支持用户在线无编程、免费搭建管理应用&#xff0c;如进销存系统&#xff0c;OA系统等常见应用&#xff0c;公式可以帮助用户提高填写表单的效率&#xff0c;将一些数据自动计算出来。了解简道云公式的小伙…

flstudio21.3.2304高级版水果编曲音乐软件

flstudio高级版是一款适用于广泛领域的音频编辑软件。它支持多通道混音器和VST插件&#xff0c;包括数百种乐器和效果插件。它还为您提供了一个乐谱编辑器&#xff0c;需要对不同乐器的节奏进行必要的编辑。Flstudio具有许多内置电子合成声音&#xff0c;可提供更广泛的电子声音…

代码随想录二刷 |二叉树 | 二叉树的右视图

代码随想录二刷 &#xff5c;二叉树 &#xff5c; 二叉树的右视图 题目描述解题思路代码实现 题目描述 199.二叉树的右视图 给定一个二叉树的 根节点 root&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 示例…

推荐4个优秀的 Python 时间序列分析库

时间序列分析在金融和医疗保健等领域至关重要&#xff0c;在这些领域&#xff0c;理解随时间变化的数据模式至关重要。在本文中&#xff0c;我们将介绍四个主要的Python库——statmodels、tslearn、tssearch和tsfresh——每个库都针对时间序列分析的不同方面进行了定制。这些库…

【unity实战】一个通用的FPS枪支不同武器射击控制脚本

文章目录 前言模型素材文章用到的粒子火光特效射击效果换弹瞄准开枪抖动效果设置显示文本最终代码不同武器射击效果1. 手枪2. 机枪3. 狙击枪4. 霰弹枪5. 加特林 其他感谢完结 前言 实现FPS枪支不同武器效果&#xff0c;比如手枪&#xff0c;喷子&#xff0c;狙击枪&#xff0c…

Redis生产实战-Redis集群故障探测以及降级方案设计

Redis 集群故障探测 在生产环境中&#xff0c;如果 Redis 集群崩溃了&#xff0c;那么会导致大量的请求打到数据库中&#xff0c;会导致整个系统都崩溃&#xff0c;所以系统需要可以识别缓存故障&#xff0c;限流保护数据库&#xff0c;并且启动接口的降级机制 降级方案设计 …

贪心算法及相关题目

贪心算法概念 贪心算法是指&#xff0c;在对问题求解时&#xff0c;总是做出在当前看来是最好的选择。也就是说&#xff0c;不从整体最优上加以考虑&#xff0c;算法得到的是在某种意义上的局部最优解 。 贪心算法性质&#xff08;判断是否可以使用贪心算法&#xff09; 1、贪…

【力扣周赛】第 372 场周赛( ⭐查询 离线做法)TODO

文章目录 竞赛链接Q1&#xff1a;2937. 使三个字符串相等竞赛时代码——检查三个字符串的最长公共前缀子串 Q2&#xff1a;2938. 区分黑球与白球竞赛时代码 Q3&#xff1a;2939. 最大异或乘积竞赛时代码——位运算解法2—— O ( 1 ) O(1) O(1)做法&#x1f44d;&#xff08;大量…

php中json_encode编码json中出现HTML代码导致无法正常输出的解决办法

$options JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT; $data array(key > <p>test</p>);echo json_encode($data, $options);JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, 和 JSON_HEX_QUOT 是 PHP 中 json_encode() 函数的常量选项&#…

Pytorch-CNN轴承故障一维信号分类(二)

目录 前言 1 数据集制作与加载 1.1 导入数据 1.2 数据加载&#xff0c;训练数据、测试数据分组&#xff0c;数据分batch 2 CNN-2D分类模型和训练、评估 2.1 定义CNN-2d分类模型 2.2 定义模型参数 2.3 模型结构 2.4 模型训练 2.5 模型评估 3 CNN-1D分类模型和训练、评…

【密码学基础】Diffie-Hellman密钥交换协议

DH介绍 Diffie-Hellman密钥协议算法是一种确保共享密钥安全穿越不安全网络的方法。 这个机制的巧妙在于需要安全通信的双方可以用这个方法确定对称密钥&#xff0c;然后可以用这个密钥进行加密和解密。 但是注意&#xff0c;这个密钥交换协议 只能用于密钥的交换&#xff0c;而…

java应用打包运行的4种方法

文章目录 1、方法一&#xff1a;打成jar部署运行2、方法二&#xff1a;通过自制启动器的方式运行3、方法三&#xff1a;使用jpackage把java和jdk一起打包4、方法四&#xff1a;使用GraalVM编译为原生应用4.1、使用native-image-agent(Graalvm内工具)工具来收集这些运行库信息4.…

软件无线电SDR-频谱采集python实现

sdr做的频谱采集&#xff0c;保存的500张频谱图&#xff0c;能看出来是什么东西吗&#xff1f;