人生第一次JAVA编程,电梯(并不算完成版),以及IDEA里使用git

首先先说说Intellij IDEA与git的互联,首先在任意(我是在coding)gitlab里新建一个工程。

然后新建一个工程记得注明url和地址、名称等

如果无法创建,则需要指定git地址

创建完毕后你的项目就相当于一个git目录了,就可以使用IDEA自带的git功能了,add和push点一点就行~

接下来正戏前先随便BB两句,上周,我经历了上大学以来最严重的一次生病(其实就是个重感冒),非常难受,然后病刚好清明假期又骑车作死去了,最后导致本次作业并没有完成。

(一切找理由都是扯淡)所以,其实并没有什么理由,菜就是菜,菜的抠脚的我并没有完成swing GUI,也没能完全实现作业要求。

发两张图祭奠一下。

同时,由于控制台难以表现多线程的电梯控制,我又手抽把bug多多的多线程部分全删了(注释是个好习惯,别急着删,先注释掉)

最后仅仅保留了还算完整的电梯类(算是主要内容吧)和赶出来的一个主类。和我设想的差太多,总之,这篇博客发完后,我还在继续完成我的swing和多线程。

先贴个代码吧

public class Elevator
{
    private int MaxC;
    private int MaxP;
    public int TargetFloor[];
    public int NowFloor;
    boolean Single,Double,run,UP,Down;
    public void SetElevator(int MAXC,int MAXP,int SET)//初始化电梯
    public void InputFloor(int Fnum)//输入楼层
    void UPorDOWN()//判断往上还是往下
    public void ElevatorRun()//电梯运行
    public boolean EleStop()//判断是否停止;
    public boolean FloorStop(int floor)//单双层停不停
    public void ShowEleState()//仅供控制台使用的状态查看
}

Elevator

详细实现全部折叠,Swing那繁多的声明和使用由于未完成也没有放出来。忽略掉这些,总之算法思想感觉有点麻烦了点。。

还是仍不住发个声明吐槽一下:

public class Elvator {
    private JPanel FloorSlect;
    private JCheckBox CB1;
    private JCheckBox CB2;
    private JCheckBox CB3;
    private JCheckBox CB4;
    private JCheckBox CB5;
    private JCheckBox CB6;
    private JCheckBox CB7;
    private JCheckBox CB8;
    private JCheckBox CB9;
    private JCheckBox CB10;
    private JCheckBox CB11;
    private JCheckBox CB12;
    private JCheckBox CB13;
    private JCheckBox CB14;
    private JCheckBox CB15;
    private JCheckBox CB16;
    private JCheckBox CB17;
    private JCheckBox CB18;
    private JCheckBox CB19;
    private JCheckBox CB20;
    private JCheckBox CB0;
    private JButton START;
    private JTextField NowF;
    private JRadioButton UPL;
    private JRadioButton DOWNL;
    private JPanel ELE;
    private JPanel Cheak;
    private JPanel ST;
    private JTextField EleText;
    private ButtonGroup group;
    private int MaxC;
    private int MaxP;
    public int TargetFloor[];
    public int NowFloor;
    boolean Single,Double,run,UP,Down;
/*分割*/
public class Elevat {
    private JPanel build;
    private JPanel E1;
    private JPanel E3;
    private JPanel E4;
    private JPanel E2;
    private JRadioButton UP1;
    private JRadioButton DOWN1;
    private JRadioButton STOP1;
    private JRadioButton UP2;
    private JRadioButton STOP2;
    private JRadioButton DOWN2;
    private JRadioButton UP3;
    private JRadioButton STOP3;
    private JRadioButton DOWN3;
    private JRadioButton UP4;
    private JRadioButton STOP4;
    private JRadioButton DOWN4;
    private JComboBox FloorS;
    private JPanel FloorCheak;
    private JRadioButton ElevatorAt;
    private JCheckBox BuUP;
    private JCheckBox BuDOWN;
    private JTextField textNowF1;
    private JTextField textNowF2;
    private JTextField textNowF3;
    private JPanel NowF2;
    private JPanel BuF2;
    private JPanel NowF1;
    private JPanel BuF1;
    private JPanel BuF3;
    private JPanel NowF3;
    private JPanel BuF4;
    private JPanel llo;
    private JTextField textE4;
    private ButtonGroup BG1,BG2,BG3,BG4;
    public Elvator ELL,ELH,ELS,ELD;

swing声明

然后是认真的总结:

这次电梯作业,乍一看挺简单的,实际也挺复杂的,考虑到真实环境下的电梯使用,应该使各个电梯相互独立运行,同时又由这栋楼相互联系起来,这时就需要多线程来实现一些同步操作。同时这些在控制台下想表现出来略复杂,这时就需要GUI。

这次是我第一次接触java,使用java的原因一个是最近在摸索android开发,脑袋一热就用了。第一次接触多线程,使用起来各种不太了解导致Bug多多,最后为了交作业全给删了。

第一次尝试双人合作(然而并没有)

最后,突然想起来这是个双人项目

我貌似忘了我的搭档!!!!!!貌似也忘了拍照!!!!!搭档戳这:http://www.cnblogs.com/wangyipp

虽然略想吐槽这分组,还是算了,自己菜还能怪队友怪分组?真是菜的抠脚,发完博客,继续补完这次作业去了

                                                                            BY:   菜的抠脚的DoubleX_xxjkdtx

时间: 2024-10-12 07:37:37

人生第一次JAVA编程,电梯(并不算完成版),以及IDEA里使用git的相关文章

JAVA编程思想(第四版)学习笔记----4.8 switch(知识点已更新)

switch语句和if-else语句不同,switch语句可以有多个可能的执行路径.在第四版java编程思想介绍switch语句的语法格式时写到: switch (integral-selector) { case integral-value1: statement; break; case integral-value12: statement; break; default: statement; } 其中integral-selector(整数选择因子)是一个能产生整数值的表达式.并且说

《JAVA编程思想》第四版 PDF 下载 中文版和英文版 高清PDF扫描带书签

一.链接: 中文版: https://pan.baidu.com/s/1d07Kp4 密码:x2cd 英文版: https://pan.baidu.com/s/1boOSdAZ 密码: rwgm 文件截图: 二.注意: 中文版 有一页( 文件页码548,书籍页码515 )图像缺失.不过没关系,只是一页源码以及简单说明,不影响整体知识. 网上的所有版本此页都是缺失的. 实在要看,可以看对应的英文版本(文件658页,书籍636页),没什么难度. 三.代码引入: 注解一章中,按照书中的jar包引入代码

JAVA编程思想(第四版)学习笔记----11.5 List,11.6迭代器

Collection类的层次结构图(来源与网络)如下所示: 接口:Iterator<T> public interface Iterable<T> Iterable<T>接口作为超级接口,此接口中只有一个返回类型为Iterable<t> 的iterator()方法,实现这个接口允许对象成为 "foreach" 语句的目标. 接口:Collection<T> public interface Collection<E>

JAVA编程思想(第四版)学习笔记----11.4 容器的打印

1 import static java.lang.System.out; 2 3 import java.util.ArrayList; 4 import java.util.Collection; 5 import java.util.HashMap; 6 import java.util.HashSet; 7 import java.util.LinkedHashMap; 8 import java.util.LinkedHashSet; 9 import java.util.Linked

Java编程思想(第四版)*第二章 个人练习

创建一个类,它包含一个int域和一个char域, 他们都没有被初始化,将他们打印出来, 以验证java执行了默认初始化. public class DomTest{ int i; char c; public DomTest(){ System.out.println("i="+i+" \nc=["+c+"]"+"\n []"); /** * 打印结果如下 i=0 c=[ ] []//仅用于对比参考 */ } /** * @p

Java编程思想 4th 第2章 一切都是对象

Java是基于C++的,但Java是一种更纯粹的面向对象程序设计语言,和C++不同的是,Java只支持面向对象编程,因此Java的编程风格也是纯OOP风格的,即一切都是类,所有事情在类对象中完成. 在Java中,使用引用来操纵对象,在Java编程思想的第四版中,使用的术语是"引用(reference)",之前有读过Java编程思想第三版,在第三版中,使用的术语是"句柄(handle)",事实上,我觉得第三版的术语"句柄"更加形象传神,就像你用一个

Java编程思想之字符串

来自:Java编程思想(第四版) 第十三章 字符串 ? 字符串操作是计算机程序中最常见的行为. ? String对象是不可变的.查看JDK文档你就会发现,String类中每一个看起来会修改String值的方法,实际上都是创建了一个全新的String对象,已包含修改后的字符串内容.而最初的String对象则丝毫未动. ? 不可变性会带来一定的效率问题.为String对象重载的"+"操作符就是一个例子.用于String的"+"与"+="是Java中仅

Java编程思想读书笔记之内部类

现在是够懒得了,放假的时候就想把这篇笔记写出来,一直拖到现在,最近在读<Java编程思想>,我想会做不止这一篇笔记,因为之前面试的时候总会问道一些内部类的问题,那这本书的笔记就从内部类开始说起. 一.为什么需要内部类 1.一个内部类的对象可以访问它的外围类的私有数据. 2.对于同一个包中的其他类来说,内部类能够隐藏起来. 3.使用内部类实现多重继承. 二.内部类重要提要 1.在方法内部或者方法内部的作用域的内部类 eg:方法内部的内部类 public interface InnerInterf

『Java编程思想-第四版』第二章:一切都是对象

Java编程思想-第四版学习总结,此为第二章:一切都是对象. package com.w3cjava.second; @SuppressWarnings("all") public class Second { /** * Java编程思想(第四版) * 第2章 一切都是对象 * @param args */ public static void main(String[] args) { /** * 2.1 用引用操作对象 * 遥控器(引用)操作电视机(对象),改变音量,改变频道 *