java学习笔记

   这两天,做了个java的小程序,就是学校的网站上的成绩查询,课程查询啥的,我把它们都集中在了一起,全部java的gui来实现的。以前学过java,但是都只是一些语法知识,上机的话,也基本都是控制台的,实验做过一个gui的,但是当时不太会,用的是eclipse开发的,纯代码的。第一次接触,难度挺大的,加上当时老师也不看程序,所以就直接找了个成品的,然后自己又做了写改进,比如美工,加个图片啥的,填个皮肤什么的。都是一些比较简单的操作,不能说没有收获吧,只要是自己动手,动脑的话,肯定是有成果的,只是多少罢了!

   这个程序,所有的东西,都是自己构造的,那么,可想而知,感触与上次是绝对不一样的。为了降低难度,我用netbean来辅助开发程序,本来以为,它会和MFC一样的,很容易做个界面什么的。但是实际就是不一样,这个软件虽说是提供界面支持,可以直接添加面板和对话框,以及各种控件什么的,可是还是存在许多问题。比如它的初始化代码不能修改,这个至今我没发现怎么改。不过有些像控件的定义,以及控件相关的函数,第一次使用软件,是不会的改的,但是随之慢慢的学习,了解netbean,就会发现这些东西是可以删除的,修改的。只要点击控件,点属性,会有属性,事件,代码之类的分类,根据每个分类找到你要修改的项,直接清空或者改属性就可以了。它与eclipse这种纯代码的开发相比,功能上有很多限制,但是不得不说,对于初学java的人来说,还是比较方便,简单的。对于熟悉java的老手来讲,纯代码应该是更好的一点的选择吧。

    不管做什么项目,都离不开数据。我们都是以数据为中心来设计软件的各种功能的。处理数据也就成为了软件开发的中心,重要部分。如果关于数据处理的算法,代码都弄完了,那么可以说,你的项目也就接近尾声了,因为剩下的无非就是把处理的结果弄到界面上去,或者通过界面来实现对数据的处理,最多再加上后期的测试,美化等。我觉得这些就相对容易一点。因为你可以完全套用已有的代码。当然,现成的代码几乎是很难满足自己的要求的,所以还的自己费点脑子,设计一下,才能最终得到想到的效果。而数据呢,就没那么简单了,光是处理数据这块,不同的项目,有不同的需求,那么每人又都有自己的想法,算法,所以很难有什么统一的处理方式。当然不可否认,增删查改的话,sql就那么几条语句,没什么变化,可你别忘了,一个项目不是仅有一个对话框,几个按钮,也不是就都是增删查改。实际我们很清楚,程序一般都有很多对话框,按钮,标签等,它们之间也不是孤立的存在,相反有的时候,它们的关系,层层嵌套,错综复杂。怎么样才能有效地处理好这些关系,而且相互之间即联系又独立,还能满足需求。这就要靠自己独一无二的设计了,算法了。。。针对这种问题,我现在习惯用标志变量加if语句来实现,不同的操作,标志变量有不同的值,在根据它的值,做不同的响应。目前来说,效果还不错,但是我知道,这算不上是一个好的方法,不过挺实用。像这样的问题,在数据处理的过程中有很多,比如不同类中传值问题,类型转换等,所以说,你解决了数据的问题,也就等于解决了一大半问题。

     编程还是离不开活跃的思想,不管做什么项目,用什么语言。举个例子来说,我在做jtable删除数据时,要实现的功能是把一条记录先从jtable中删除,然后再在数据库中删除,看似挺简单的,但我的项目里,就卡到这了。数据库中删除很容易,一句sql就搞定,删除jtable是就遇到了麻烦。如果是有一两个操作在同一张表上的话,很容易实现删除,model.remove(tabel.setselcetrow()),就完成了。关键是,我所有的操作,最终的结果都在同一个jtable上,这就不好使,用上边那句就出错,要不就没效果。我在尝试了几次之后,还是无果,马上换一种方法,换个角度。既然数据库中删除可以,那么我先删除,在重新显现出来不就和 在jtable删除一样了吗。想是这么想的,做了代码之而后,还真行。通过这个例子,就是说,方法有很多,不要揪着一个不放,它就算是定理,是经过千万人验证的,是绝对对的,但是在你这不行,那它就不是好方法(对于自己)。那你就要活跃起你的大脑,开发你的想象,你的创造,设计出属于自己的方法。

    这次还有个收获,就是一个控件的功能不仅限于它本身功能,这个就取决于你的创造,你的想象!

    语言这东西,就得实战,要不跟们学不到啥玩意,就像英语似的,你不跟外国人说话,一天天的也不说英语,光知道语法,认识几个单词,有嘛用啊!


   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值