面向对象(java菜鸟的课堂笔记)
import java.util.*; //调包
public class Main{ //建一个主类
static Scanner sc = new Scanner(System.in);
static int i = 0;
static Chaoshi[] shop = new Chaoshi[100];
public static void main(String[] args){ //主入口
menu(); //调用菜单方法
}
public static void menu(){ //定义一个菜单方法
System.out.println("============================");
System.out.println("》欢迎进入超市库存统计系统《");
System.out.println("=》 请输入对应数字进行操作《");
System.out.println("=======》 1,进货存储 《");
System.out.println("=======》 2,修改信息 《");
System.out.println("=======》 3,查询库存 《");
System.out.println("=======》 4,退出操作系统 《");
System.out.println("============================");
int a = sc.nextInt(); //用户输入
switch (a){
case 1:adds(); break;
case 2:update(); break;
case 3:select(); break;
case 4:exit(); break;
default:System.out.println("====输入有误,请重新输入====");
menu();
break;
}
}
public static void adds(){ //定义一个存货方法
System.out.println("=========请输入货物名称=========");
String sname = sc.next();
System.out.println("=========请输入货物类型=========");
String sclass = sc.next();
System.out.println("=========请输入货物价格=========");
String sprice = sc.next();
System.out.println("=========请输入货物数量=========");
String snum = sc.next();
Chaoshi shop1 = new Chaoshi(sname,sclass,sprice,snum);
shop[i] = shop1;
i++;
System.out.println("输入成功,继续输入(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
adds();
}else menu();
}
public static void update(){ //定义一个修改方法
System.out.println("请输入商品名称,为您修改");
String b = sc.next();
for(i=0;i<100;i++){
if(b.equals(shop[i].sname)){
System.out.println("===================查询结果如下===================");
shop[i].say();
System.out.println("=========请输入修改后货物名称=========");
String sname = sc.next();
System.out.println("=========请输入修改后货物类型=========");
String sclass = sc.next();
System.out.println("=========请输入修改后货物价格=========");
String sprice = sc.next();
System.out.println("=========请输入修改后货物数量=========");
String snum = sc.next();
Chaoshi shop1 = new Chaoshi(sname,sclass,sprice,snum);
shop[i] = shop1;
System.out.println("继续修改(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
update();
}else menu();
}
}
}
public static void select(){ //定义一个查询方法
System.out.println("指定查询(1),全部查询(2)");
int a = sc.nextInt();
if(a==1){
System.out.println("请输入商品名称,为您查询");
String b = sc.next();
for(i=0;i<100;i++){
if(b.equals(shop[i].sname)){
System.out.println("===================查询结果如下===================");
shop[i].say();
System.out.println("继续查询(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
select();
}else menu();
}
}
}else{
for(Chaoshi s:shop){
if(s!=null){
s.say();
}
}
System.out.println("继续查询(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
select();
}else menu();
}
}
public static void exit(){ //定义一个退出方法
System.out.println("===》》》您已退出操作系统《《《===");
System.exit(0);
}
}
public class Chaoshi{ //新建一个超市类
String sname;
String sclass;
String sprice;
String snum;
public Chaoshi(String sname,String sclass,String sprice,String snum){
this.sname = sname;
this.sclass = sclass;
this.sprice = sprice;
this.snum = snum;
}
public void say(){
System.out.println("名称:"+sname+"\n种类:"+sclass+"\n价格:"+sprice+"\n数量:"+snum+"\n"); //定义一个输出方式
}
}
面向对象(java菜鸟的课堂笔记)的更多相关文章
- 泛型(java菜鸟的课堂笔记)
1. 泛型的简单运 用和意义 2. 泛型的上限与下限 3. 泛型和 子类继承的限制 4. 泛型类和泛型 方法 5. 泛型嵌套和泛型擦除 ...
- java中的一些规则(菜鸟的课堂笔记)
ls 查看目录下文件 java规则 代码都定义在类中,用class定义 禁止一个源文件写两个类: 一个源文件中,只能有一个类文件是pubic: 一个源文件中如果有多个类,编译完之后会产生多个class ...
- C#面向对象编程基础-喜课堂笔记
**************[5][C#面向对象编程基础]第1讲:类与对象**************** *************2.1.1_类与对象的概念**** ...
- java GUI (课堂笔记)
关于java GUI Swing组件: JFrame 窗口组件 JLabel 标签 JButton 按钮组件 JTextField 单行文本框 系统控件(JDK自带) 自定义控件(模仿系统控件): 继 ...
- Java基础进阶:内部类lambda重点摘要,详细讲解成员内部类,局部内部类,匿名内部类,Lambda表达式,Lambda表达式和匿名内部类的区别,附重难点,代码实现源码,课堂笔记,课后扩展及答案
内部类lambda重点摘要 内部类特点: 内部类可以直接访问外部类,包括私有 外部类访问内部类必须创建对象 创建内部对象格式: 外部类.内部类 对象名=new外部类().new内部类(); 静态内部类 ...
- 线程(java课堂笔记)
1.两种方式的差异 2.线程的生命周期 3.线程控制(线程的方法) 4.线程同步 5.线程同步锁 一. 两种方式的差异 A extends Thread :简单 不能再继承其他类了(Java单继承)同 ...
- Java课堂笔记(零):内容索引
回想自己学习和使用Java的时间也是很长了.本科期间课堂上浅尝辄止地学习了点皮毛,后来也是搁置不用,未曾深入研究.研究生期间因为项目和实习的原因,基本算是重新拾起Java这门语言,并且接触到了Spri ...
- Java基础进阶:多态与接口重点摘要,类和接口,接口特点,接口详解,多态详解,多态中的成员访问特点,多态的好处和弊端,多态的转型,多态存在的问题,附重难点,代码实现源码,课堂笔记,课后扩展及答案
多态与接口重点摘要 接口特点: 接口用interface修饰 interface 接口名{} 类实现接口用implements表示 class 类名 implements接口名{} 接口不能实例化,可 ...
- 九章算法系列(#3 Binary Tree & Divide Conquer)-课堂笔记
前言 第一天的算法都还没有缓过来,直接就进入了第二天的算法学习.前一天一直在整理Binary Search的笔记,也没有提前预习一下,好在Binary Tree算是自己最熟的地方了吧(LeetCode ...
随机推荐
- Java命名默认规范
学习java的时候,命名的大小写经常弄混,所以在此总结一下java命名规范 1.project(项目名) 说法不一,暂定小写,eg:arraytest 2.包名 小写,eg:package array ...
- 使用webpack打包css和js
1.安装webpack. npm install webpack -g 2.创建一个文件夹app. 3.新建文件test.js. require("!style-loader!css-loa ...
- Machine Learning——Supervised Learning(机器学习之监督学习)
监督学习是指:利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程. 我们来看一个例子:预测房价(注:本文例子取自业界大牛吴恩达老师的机器学习课程) 如下图所示:横轴表示房子的面积,单位是 ...
- cannot locate symbol "atof" referenced by错误分析
ndk从r8升级到r10后, 使用eclipse编译出来的so库报错了,加载库的时候报错cannot locate symbol "atof" referenced by 原因:A ...
- Postmark介绍
一. 引言 Postmark是由著名的NAS提供商NetApp开发,用来测试其产品的后端存储性能. Postmark主要用于测试文件系统在邮件系统或电子商务系统中性能,这类应用的特点是:需要频繁.大量 ...
- git 利用分支概念实现一个仓库管理两个项目
需求描述:开发了一个网站,上线之际,突然另一个客户说也想要个一样的网站,但网站的logo和内部展示图片需要替换一下,也就是说大部分的后台业务逻辑代码都是一致的,以后升级时功能也要保持一致:刚开始想反正 ...
- crontab定时任务不执行的原因
1.重启crontab若是遇见"You (cloudlogin) are not allowed to use this program (crontab) ...
- windows下使用IIS的ARR实现站点的负载均衡
1) 目的: 访问localhost:18066 对下边两个端口负载 localhost:18098 localhost:18099 2) 手段: 1.通过nginx 2.通过iis的AR ...
- python之基础中的基础(三)
1.类,类就像是负责特定项目的主管,交给主管干这件事情,主管可以让手下的人分别去完成自己该干的活,最后综合起来把结果交给主管传递出去,即完成任务. class Dog(): ""& ...
- 时间序列预测之--ARIMA模型
什么是 ARIMA模型 ARIMA模型的全称叫做自回归移动平均模型,全称是(ARIMA, Autoregressive Integrated Moving Average Model).也记作ARIM ...