返回本章节

返回作业目录


需求说明:

  • 实现对兵营类的封装
  • 将兵营类中的所有属性设置为私有访问权限。
  • 将兵营类中所有属性的赋值方法设置为公有访问权限。
  • 要求兵营名称的长度在4~8位之间。
  • 要求兵营士兵的人数在100~500之间。

实现思路:

封装兵营类的实现思路如下:

  1. 将 Barracks 类中所有的属性均定义为私有访问权限。
  2. 将已经创建的士兵总数count属性定义为静态变量,在Barracks类中定义大小为3的兵营对象数组变量bksarray。
  3. 在 setName()方法中,对用户输入的兵营名称的长度进行校验。如果输入的名称合法,将继续进行下一步的操作;否则系统给出友好提示信息,要求用户重新输入。
  4. 在setSelfCount()方法中,完成对用户输入的当前兵营已创建士兵的数量进行合理的校验。如果输入的信息不符合系统要求,则系统给出友好提示信息,要求用户重新输入。

实现代码:

Barracks 类

import java.util.Scanner;

public class Barracks {
private String name;//兵营名字
private int selfCount;//士兵数量 public void setName(String name) {
if (name.length()<8&&name.length()>4) {
this.name = name;
} else {
System.out.println("兵营名称的长度在4~8位之间");
}
}
public void setSelfCount(int selfCount) {
if (selfCount>100&&selfCount<500) {
this.selfCount = selfCount;
}else {
System.out.println("兵营士兵的人数在100~500之间");
}
} public String getName() {
return this.name;
} public int getSelfCount() {
return selfCount;
} }

Test 类

import java.util.Scanner;

public class Test {

	public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Barracks0 b = new Barracks0();
System.out.println("请输入兵营名称:");
b.setName(sc.next());
System.out.println("请输入兵营人数:");
b.setSelfCount(sc.nextInt());
System.out.println("兵营名称:"+b.getName());
System.out.println("兵营人数:"+b.getSelfCount());
} }

最新文章

  1. Sublime Text 3 快捷键
  2. Kotlin &amp; Vertx 构建web服务
  3. 802.11 wireless 六
  4. C#汉字转拼音首字母
  5. 【JS跨域请求】Ajax跨域请求JSONP
  6. [Data Structure] 红黑树( Red-Black Tree ) - 笔记
  7. 2015 UESTC Winter Training #6【Regionals 2010 &gt;&gt; North America - Rocky Mountain】
  8. php基础之 -&gt;, =&gt;,@,&amp;,::,%符号
  9. java线程池相关知识点总结
  10. expressjs 支持umeditor 的图片上传
  11. 使用jekyll和Github搭建个人博客
  12. 【读书笔记】iOS-分类与协议
  13. POJ 3304 Segments (叉乘判断线段相交)
  14. rsync定时同步文件
  15. 4.无监督学习--K-means聚类
  16. 15.Colection集合和Iterator接口.md
  17. Altium Designer 基本封装
  18. JavaWeb开发之网站实现文件上传功能
  19. 【PaddlePaddle系列】报错解决方法合集 (不定时更新)
  20. GATK --- wdl 语言

热门文章

  1. oracle中的控制语句
  2. Kotlin 学习(1)
  3. this指针的用法和基本分析
  4. 了解C#的Expression
  5. 时间同步——TSN协议802.1AS介绍
  6. [BUUCTF]REVERSE——crackMe
  7. 【二进制】【WP】MOCTF逆向题解
  8. 参加Mos考试
  9. NOAA数据下载方法
  10. CF637B Chat Order 题解