Java项目实例之---学生选课(面向对象复习)
学生选课(面向对象复习)
设计一个学生选课的程序,分别有学生类(Student)和课程类(Course)
学生类的属性有:学号(String),姓名(String),性别(char),所选科目(Course[])
课程有:Java、PHP、JQuery、HTML、CSS、C++、MySQL、Oracle
每个学生必须要选3门课程,可以指定选择哪3门,也可以让系统随机选择,请使用面向对象的封装特性实现在控制台中选课。
//课程类
public class Course {
private String cname[]={"Java","PHP","JQuery","HTML","CSS","C++","MySQL","Oracle"};//课程名称 public String[] getCname() {
return cname;
} public void setCname(String[] cname) {
this.cname = cname;
}
}
//学生类 public class Student { private String sno;//学号 private String name;//姓名 private String sex;//性别 private String course[]=new String[3];//选课 public Student(String sno,String name,String sex){ this.setSno(sno); this.setName(name); this.setSex(sex); }
public String getSno() { return sno; }
public void setSno(String sno) { this.sno = sno; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String[] getCourse() { return course; } public void setCourse(String[] c) { course = c; } }
import java.util.Scanner; public class StudentTest { public static void main(String[] args){ int i=1; String[] st=new String[3]; Course a=new Course(); Student stu=new Student("123","lili","女"); /** * 判断是否选择课程,如果是,则输入课程名称,如果否,则随机产生三门课程 */ System.out.println("************是否选择课程***********"); Scanner sc=new Scanner(System.in); String s=sc.next(); switch(s) { case "是": System.out.println("************请输入所选课程名称:***********"); for (int n = 0; n < 3; n++) { //生成随机数,工具类 Scanner sa = new Scanner(System.in); String one = sa.next(); st[n] = one; } stu.setCourse(st); break; case "否": System.out.println("************随机选择课程:***********"); for (int n = 0; n < 3; n++) { int j = (int) (Math.random() * 7)+1; String[] c=a.getCname(); //System.out.println(c[j]); st[n]=c[j]; } stu.setCourse(st); break; } /** * 输出学生信息 */ System.out.println("**************学生信息**************"); System.out.println("学号:"+stu.getSno()); System.out.println("姓名:"+stu.getName()); System.out.println("性别:"+stu.getSex()); String[] cou=stu.getCourse(); System.out.print("所选课程:"); for(int y=0;y<3;y++){ System.out.print(cou[y]+" "); } } }
运行结果:
************是否选择课程***********
是
************请输入所选课程名称:***********
PHP
CSS
C++
**************学生信息**************
学号:123
姓名:lili
性别:女
所选课程:PHP CSS C++
************是否选择课程***********
否
************随机选择课程:***********
**************学生信息**************
学号:123
姓名:lili
性别:女
所选课程:PHP JQuery MySQL
Java项目实例之---学生选课(面向对象复习)的更多相关文章
- java web知识点复习,重新编写学生选课系统的先关操作。
为了复习之前学习的相关的html,javaweb等知识.自己有重新编写了一遍学生选课系统. 下面主要展示登录界面的代码,以及各个大的主页面的相关jsp. <%@ page language=&q ...
- JAVA | 学生选课系统
这里使用JAVA语言编写的简易的学生选课系统,展现的都是这个系统核心代码. 其中有不足欢迎批评和指正! 链接数据库的代码 package connection;//连接数据库student impor ...
- Java项目案例之---计算公司员工的工资(面向对象复习)
计算公司员工的工资(面向对象复习) 某公司的雇员分为以下若干类: Employee:这是所有员工总的父类,属性:员工的姓名,员工的生日月份.方法:double getSalary(int month) ...
- 学生选课系统(Java语言期末前测试)
测试具体要求: 2.系统要求与功能设计 2.1 页面要求 (1)能够在Tomcat服务器中正确部署,并通过浏览器查看: (2)网站页面整体风格统一: (3)首页(登录页)要求实现不同用户登录后,进 ...
- python实现学生选课系统 面向对象的应用:
一.要求: 选课系统 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 使用pickle保存在文件 学生: 学生:用户名.密码.性别.年龄.选课列表[].上课 ...
- Java项目案例之---开灯(面向对象复习)
开灯(面向对象复习) 设计一个台灯类(Lamp)其中台灯有灯泡类(Buble)这个属性,还有开灯(on)这个方法 设计一个灯泡类(Buble),灯泡类有发亮的方法 其中有红灯泡类(RedBuble)和 ...
- python基础-10 程序目录结构 学生选课系统面向对象练习
一 程序目录结构 1 bin文件夹 二进制文件.代码程序 2 conf 配置文件 3 帮助文档 4 头文件库文件等 二 学生选课系统部分代码 未完待续 1 包内的__init__.py文件 在包 ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:hbase学生选课案例
实验目的 复习hbase的shell操作和javaAPI操作 了解javaWeb项目的MVC设计 学会dao(数据库访问对象)和service层的代码编写规范 学会设计hbase表格 实验原理 前面我 ...
- SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句
附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...
随机推荐
- WPF 数据模板使用值转换器
<Window x:Class="CollectionBinding.MainWindow" xmlns="http://schemas.micros ...
- 扩展ASCII码,不同的国家有不同的字符集。Unicode转换为utf8的规则,utf8没有大小端的问题。超过0xFFFF的Unicode字符WINAPI也无能为力(附各种字符编码表及转换表)good
一.概念 1,ASCII ASCII(American Standard Code for Information Interchange),中文名称为美国信息交换标准代码.是 ...
- This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.
Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when ...
- Windows 上静态编译 Libevent 2.0.10 并实现一个简单 HTTP 服务器(无数截图)
[文章作者:张宴 本文版本:v1.0 最后修改:2011.03.30 转载请注明原文链接:http://blog.s135.com/libevent_windows/] 本文介绍了如何在 Window ...
- huawei 通过BGP的团体属性进行路由控制
网络拓扑 XRV1的配置: =========================================================================== # sysname ...
- Win10《芒果TV》更新v3.4.10春光版:优化弹窗体验,修复热键和推送
春来触地故乡情,忽见风光忆两京,金谷踏花香骑入,曲江碾草钿车行,Win10版<芒果TV>更新v3.4.10,进一步优化弹窗体验,修复热键和推送异常. Win10版<芒果TV>V ...
- TThread类详解
TThread是一个抽象类,可以创建几个独立的线程.类关系 TObject在一个多线程的应用程序中创建一个TThread的后子类代表一个线程.每一新子类的TThread对象的实例是一个新的线程.从TT ...
- VirtualBOX 虚拟机安装 OS X 10.9 Mavericks 及 Xcode 5,本人X220亲测(超详细截图)
http://www.cnblogs.com/yipu/p/3611611.html http://bbs.feng.com/read-htm-tid-7625465.html OS X Maveri ...
- 如何把zip文件直接解压到内存里?
解压到硬盘再读进来耽误时间. var LZip: TZipFile; LMem: TMemoryStream; LBytes: TBytes;begin LZip := TZipFile.Cr ...
- 手机控制PPT good
以前做了一个小东西,通过手机来控制PPT的翻页,最大化和最小化,东西很简单,近期整理电脑发现了拿来和大家分享一下 主要分为两个部分,客户端和服务器 客户端实现 当初考虑到跨平台的特性就选择了qt来写的 ...