JAVA 实验总结
实验报告
通过此次实验的整理与学习,我在感觉java编程方面有了很大的进步,同时也更好的理解的面向对象的编程思路,懂得程序设计的可用性以及代码编写的规范性!并且拥有了更好的代码执行经验
首先在标识符、变量、以及数据类型方面,通过学习,我了解到标识符明白必须规范,不能随便定义,当以下划线(_)、美元符号($)等此类符号定义时,方可通过java编译,否则则会运行报错,另外在定义变量时,int,double也要注意区分,虽然都能进行计算,但是其精度是不一样的!在java中一共有8中数据类型,分别是int,long,short,float,double,char,boolean,byte,除此之外,在创建多个变量时不能重名,并且一定在变量赋值之后才能用,同一条语句中可以定义多条变量。
其次在对数组的使用时,有俩种方式定义数组,一种是直接new Object[int i]另外一种是直接在定义的数组后边写{}在里面赋值即可。在使用数组时,我常常遇到报错问题,例如访问数组的元素超过了索引的范围,程序则会抛出java.lang.ArrayIndexOutOfBoundsException。告诉我数组越界,这时我将重新判断数组,以保证程序正常运行。学习数组之后,我了解到集合,并且知道ArrayList用于存储相同的数据或对象的底层也是数组!而集合在java中相当重要。
通过学习,我也了解到了Map和Set,TreeMap…等集合,使我对java的使用又增添了一大步!
在对类的使用,以及面向对象的实现——类的实例化,方法,构造参数的使用,我也收获颇丰,在使用类时,我常报找不到main方法,原因有 2其一为我在文件编译时加入了Package,其二为没有定义主方法,只是写了类的私有方法导致报错!在实例化对象时,我有时也会犯错,在继承的时候,我将父类强转为子类,导致程序报错!并且未在父类中定义无参构造方法时,在其子类中写了有参构造方法,导致子类中的有参构造方法一直报错!我积极排查错误!其次,在调用类中的属性时,因为类中的私有属性不能被继承,只能靠重写来实现。在代码运行时,常发生找不到方法,原因为我未在类中定义其方法!
Swing组件的使用使我产生了对java实验的浓厚兴趣,每一个组件都拥有属性,例如一个按钮可以拥有点击事件,一个文本域可以拥有鼠标监听事件,但是在使用中还是会报错,我因为没有看好具体的布局,导致放入的按钮和文本域发生偏差,但是修改之后,加入网格布局,界面效果显然比之前好了许多,而且也增加了观赏性以及用户体验性!对应事件处理,我利用AddMouseListner()为按钮增加点击功能,并将需要交互的程序提前写好封装在静态方法中,在产生点击事件时调用,完成了服务端与客户端交互的应用!也使代码保持不错的运行!
异常对我来说并不陌生,当我犯错时,它总会第一个出现,在Lab8我自定义一个异常类,当输入英文字母时,程序会自动报对,并且输出当前输入的英文字母,且英文字母为一个,若多输,则会抛出IllegalLetterException错误,在执行完程序之后会输出finally中的输出值!
我用了将String类型转化为char类型的数组的方法用于识别当前英文字母,以便于程序更好的读写,我也用了驼峰命名法,增加代码的可读性!
数据库连接时,我按照Lab9的方法首先加载驱动,Class.ForName(),将数据库的驱动加载,然后进行读取配置文件操作,在src目录下提前创建好了jdbc.propeties配置文件,用于接通数据库,在进行读取操作时,因没有注意驱动名字和数据库的用户名密码,导致没有读取到正常的资源,于是在纠正之后,我在导入的jar驱使下正常的链接到了数据库,实现了jdbc的运行!在查询数据库的一条记录时,我按照它的名字进行查询,但是因为对数据库的了解不够,误将其写为”admin”形式,导致程序中sql语句错误,后将其改为’admin’程序便可以正常运行!另外我还了解到了DBCP和C3P0俩种数据库连接池,在其封装下,不用进行太多的操作,可以更快的建立与数据库的链接,完成对信息的操作。
在本次实验中,我遇到了许多问题,每一次我都积极去排查错误,然后将错误铭记,以保证在以后的程序设计中避开它们,完成好每一次的程序设计,做好每一个程序,也可以更好的学习java。