• 098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类


    098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类

    本文知识点:编写并测试Subject类

    说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进行了截图记录,没有对截图步骤进行详细的文字说明(后面博主时间充裕了,会对目前的博客编辑修改,补充上详细的文字说明);有些步骤和相关知识点缺乏文字描述,可能会难以理解。读者如有不明之处,欢迎博客私信或者微信(本人微信在博客下方的“关于博主”处)与本人交流,共同进步

    编写并测试Subject类

    Subject类

    public class Subject {
    	// 成员属性:学科名称、学科编号、学制年限、报名选修的学生信息、报名选修的学生个数
    	private String subjectName;
    	private String subjectNo;
    	private int subjectLife;
    	private Student[] myStudents;
    	private int studentNum;
    	
    	// 无参构造方法
    	public Subject() {
    
    	}
    
    	// 带参构造,带参构造,实现对全部属性的赋值
    	public Subject(String subjectName, String subjectNo, int subjectLife) {
    		// this.subjectName=subjectName;
    		this.setSubjectName(subjectName);
    		this.setSubjectNo(subjectNo);
    		this.setSubjectLife(subjectLife);
    	}
    	
    	public void setSubjectName(String subjectName) {
    		this.subjectName = subjectName;
    	}
    
    	public String getSubjectName() {
    		return this.subjectName;
    	}
    
    	public String getSubjectNo() {
    		return subjectNo;
    	}
    
    	public void setSubjectNo(String subjectNo) {
    		this.subjectNo = subjectNo;
    	}
    
    	public int getSubjectLife() {
    		return subjectLife;
    	}
    
    	// 设置学制年限,限制必须>0
    	public void setSubjectLife(int subjectLife) {
    		if (subjectLife <= 0)
    			return;
    		this.subjectLife = subjectLife;
    	}
    
    	/**
    	 * 获取选修专业的学生信息 如果保存学生信息的数组未被初始化,则,先初始化长度200
    	 * @return 保存学生信息的数组
    	 */
    	public Student[] getMyStudents() {
    		if(this.myStudents==null)
    			this.myStudents=new Student[200];
    		return myStudents;
    	}
    
    	public void setMyStudents(Student[] myStudents) {
    		this.myStudents = myStudents;
    	}
    
    	public int getStudentNum() {
    		return studentNum;
    	}
    
    	public void setStudentNum(int studentNum) {
    		this.studentNum = studentNum;
    	}
    
    	/**
    	 * 专业介绍的方法
    	 * @return 专业介绍的相关信息,包括名称、编号、年限
    	 */
    	public String info() {
    		String str = "专业信息如下:
    专业名称:" + this.getSubjectName() + "
    专业编号:" + this.getSubjectNo() + "
    学制年限:"
    				+ this.getSubjectLife() + "年";
    		return str;
    	}
    	
    	public void addStudent(Student stu){
    		/*
    		 * 1、将学生保存到数组中
    		 * 2、将学生个数保存到studentNum
    		 * */
    		//1、将学生保存到数组中
    		for(int i=0;i<this.getMyStudents().length;i++){
    			if(this.getMyStudents()[i]==null){
    				stu.setStudentSubject(this);
    				this.getMyStudents()[i]=stu;
    				//2、将学生个数保存到studentNum
    				this.studentNum=i+1;
    				return;
    			}
    		}
    	}
    }
    
    

    测试类

    public class SchoolTest {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		//测试Subject
    		Subject sub1=new Subject("计算机科学与应用","J0001",4);
        	System.out.println(sub1.info());
    	}
    
    }
    
  • 相关阅读:
    浅谈javascript中一些与DOM元素相关的属性名词
    一个弹出层插件
    模仿京东商城的一个图片轮播
    jQuery设计思想
    模仿自动完成效果
    linux下如何用GDB调试c++程序(转)
    Linux makefile 教程
    boost库解析
    记一次MongoDB性能问题,附原理解析
    深入分析Linux内核源码
  • 原文地址:https://www.cnblogs.com/xlfcjx/p/13781666.html
Copyright © 2020-2023  润新知