首先必须承认,这次的题目还是很简单的,因为这道题完全就是换了个包装的小学期题目,也就是说,如果让我用C++来编写,我可以保证3个小时内编写完毕,也许在一些小的方面,比如输入数字的合法性上存在问题,但毕竟程序是完整且可执行的。但换成java……那就失败一多半了,因为最关键的问题我还没学,那就是程序对文件的操作。由于完全不懂对文件操作的语句,所以上网抄也是不现实的,因为你根本不理解网上抄来每一句程序的意思,也许这句意思是检验文件是否打开,也许这句意思是只将整型数据输出到文件。所以我没抄,而这个程序也是不完整的。
  不过老师说的一些话让我注意到其他一些问题,那就是检验数据的合法性。回来后我又仔细看了看我以前做的程序,感觉真的是好“瘦弱”啊,完全没有一个程序应该有的“健壮”,就是说,包括刚刚过去的小学期的作业,我所有的程序都没有在意过数据是否合法,但为什么在我进行调试时没有发生bug呢?原因很简单,我作为程序的开发者,自然知道我输入的数据应该是什么类型的,所以我可以调试的很成功。但用户不知道啊(假设有这么一个用户),虽然我有着输出提示,比如该输入新建联系人时,我会输出:请依次输入姓名(string),年龄(int),性别(string/Boolean),电话号码(string),然后用户输入相应信息就行了。但万一遇到一个脑子有坑的用户,他偏要依次输入23,小明,135846952,0这样的数据怎么办?电脑是按照数据类型划分内存的,这么一搞,电脑可不是人,它可不会自动排列数据,这样,电脑直接就罢工了,程序直接就崩溃了。这就是我所有程序的致命缺点。好在我还是个程序菜鸟,至少现在意识到数据合法性的重要性还不晚,以后在我的程序中就应该加上这些设定了。
  所以,第一节java课程我觉得收获还是蛮大的,虽然并没有学到java的语句知识,但至少有了一种意识,而我认为,意识要比单纯的知识要有用的多。当然,说到最后,这个程序是一定要完成的,当然我现在还束手我策,因为还没搞定对文件操作,但1个月之内,我一定会学会对文件操作,并将这个程序编写完成的。

关于第一次java课的感想的更多相关文章

  1. 第一次 在Java课上的编程

    第一次在java课上的编程(使用参数输入求和): 代码: public class He {    public static void main(String[] args)    {       ...

  2. JAVA课设个人博客--多源数据教学管理系统

    JAVA课设个人博客--多源数据教学管理系统 1.团队课程设计博客链接 https://www.cnblogs.com/hq9-/p/10278470.html 2. 个人负责模块或任务说明 主要模块 ...

  3. JAVA课程学习感想

    JAVA课程学习感想 在学习JAVA之前,我们学习了C语言,汇编语言,数据结构等等.虽然学习了这些,但对于JAVA来说,学习起来不是那么容易,所有的计算机语言有相似的地方,但他们更有不同的地方.对我来 ...

  4. 第一次JAVA基础考试后的反思

    今天进行了第一次JAVA基础考试,考查了课本上前面三章和方法的知识,基本没有涉及到数组.通过这次的考试,暴露了自己在学习中的很多问题. 机试题是编写一个学员状态转换器,主要运用的是选择语句和方法,而没 ...

  5. JAVA课设---五子棋

    1.团队博客链接 JAVA课设-五子棋-团队博客 2.个人负责模块: ①对鼠标事件的处理 , 此模块需处理五子棋的放置问题.颜色转换问题.以及当五子连线时弹出窗口显示结果. ②对MainFrame中主 ...

  6. 第一次java程序测试感受

    第一次JAVA程序设计测试,检验了一个暑假的成果.显而易见,我做的并不是很好,程序最起码的输入输出以及方法的定义还是没有问题的,但是考到了文件输入输出便看出来了.对于文件的输入输出,虽然我预习到那里, ...

  7. java开学考试感想及代码

    上周四我们的第一节java课,王老师给我们进行啦开学考试,这也是上学期放假之前给我们约定好的 但是情况显然没有我想的那么好,其实我觉得这个atm系统比上届学生信息管理系统难的多,上届的话毕竟有小学期的 ...

  8. java课设数据库打包报错

    最近在交java课设时把东西打包给老师遇到许多奇葩问题, 首先是数据库复制时提示: 这是数据库与SQL server服务没有分离(我用的是SQLserver暂时,对于其他的,我以后会继续尝试)可以进行 ...

  9. 20155301第十一周java课栈程序

    20155301第十一周java课栈程序 内容一:后序表达式: abcde/-f+ 内容二:根据填充以下代码: import java.util.Scanner; public class MyDCT ...

随机推荐

  1. [No0000111]java9环境变量配置bat

    保存成bat(utf-8 无签名 编码) 右键以管理员权限运行 修改JAVAINSTALLPATH 为JAVA SDK 安装目录(默认用C:\PROGRAM FILES\JAVA\)即可: 只在 用户 ...

  2. 深度学习中的batch的大小对学习效果的影响

    Batch_size参数的作用:决定了下降的方向 极端一: batch_size为全数据集(Full Batch Learning): 好处: 1.由全数据集确定的方向能够更好地代表样本总体,从而更准 ...

  3. Nginx配置跨域请求 Access-Control-Allow-Origin *

    当出现403跨域错误的时候 No 'Access-Control-Allow-Origin' header is present on the requested resource,需要给Nginx服 ...

  4. Elastic数据迁移方法及注意事项

    需求 ES集群Cluster_A里的数据(某个索引或某几个索引),需要迁移到另外一个ES集群Cluster_B中. 环境 Linux:Centos7 / Centos6.5/ Centos6.4Ela ...

  5. echart四川地图

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  6. CSS盒子模型(简要了解)

    CSS中, Box Model叫盒子模型(或框模型),Box Model规定了元素框处理元素内容(element content).内边距(padding).边框(border) 和 外边距(marg ...

  7. [web][nginx] 初识nginx -- 使用nginx搭建https DPI解码测试环境

    环境 CentOS 7 X86 文档: https://nginx.org/en/docs/ 安装: [root@dpdk ~]# cat /etc/yum.repos.d/nginx.repo [n ...

  8. 内部排序->基数排序->链式基数排序

    文字描述 基数排序是和前面各类排序方法完全不相同,前面几篇文章介绍的排序算法的实现主要是通过关键字间的比较和移动记录这两种操作,而实现基数排序不需要进行记录关键字间的比较.基数排序是一种借助多关键字排 ...

  9. LeetCode 292 Nim Game 解题报告

    题目要求 You are playing the following Nim Game with your friend: There is a heap of stones on the table ...

  10. Appium入门(4)__ Appium Client安装

    打算使用 Python 语言编写 appium 自动化测试脚本 一.前提: 1.安装Python语言 到Python官网下载最新版本:https://www.python.org/ 2.安装Pytho ...