面向对象(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 ...
随机推荐
- 在 Intellij 中设置集成 Jenkins 服务器连接
如何在 Intellij 中设置集成 Jenkins 服务器连接 在Intellij中可以很方便的设置Jenkins服务器,不用登录到浏览器中,在Intellij中即可浏览所有job,开发plugin ...
- [No0000E9]Microsoft Help Viewer 2.3绿色版
今天没事,提取了一下2017的Microsoft Help Viewer 2.3绿色版,自测没发现什么问题,有问题请后补. 下载地址:http://files.cnblogs.com/files/Ch ...
- Javascript中this关键字
this 是谁调用的时候,指定的是谁,通俗一点讲就是,函数是谁执行是不是由其中一个对象点出来的那就是代表它, 比如执行对象a中b函数a.b();这个b函数中this代表a; 当换成var c=a.b; ...
- uoj#228 基础数据结构练习题
题面:http://uoj.ac/problem/228 正解:线段树. 我们可以发现,开根号时一个区间中的数总是趋近相等.判断一个区间的数是否相等,只要判断最大值和最小值是否相等就行了.如果这个区间 ...
- crash部分命令用法
Set set [pid | taskp | [-c cpu] | -p] | [crash_variable [setting]] | -v 1.设置要显示的内容,内容一般以进程为单位. Set p ...
- [Splay模版1]
输入 第1行:1个正整数n,表示操作数量,100≤n≤200,000 第2..n+1行:可能包含下面3种规则: 1个字母'I',紧接着1个数字k,表示插入一个数字k到树中,1≤k≤1,000,000, ...
- js 数字递增特效 仿支付宝我的财富 HTML5
上周五应着公司临时需求,一天的时间解决掉官网(ps:比较简单哈哈),需求里面有一个特效就是数字递增到指定的数值,其实JS写也不复杂的,但是我发现一个js小插件,这个插件轻巧简单,用起来也非常简单实用. ...
- vue2.0 组件通信
组件通信: 子组件要想拿到父组件数据 props 子组件不允许直接给父级的数据, 赋值操作如果想更改,父组件每次穿一个对象给子组件, 对象之间引用. 例子: <script> window ...
- linux-redhat-iso 下载
http://archive.download.redhat.com/pub/redhat/linux/9/en/iso/i386/ http://www.jb51.net/do/plus/downl ...
- mybatis mapper.xml 写关联查询 运用 resultmap 结果集中 用 association 关联其他表 并且 用 association 的 select 查询值 报错 java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for mybatis.map
用mybaits 写一个关联查询 查询商品表关联商品规格表,并查询规格表中的数量.价格等,为了sql重用性,利用 association 节点 查询 结果并赋值报错 商品表的mapper文件为Gooo ...