JavaSE 回顾与总结

来源:互联网 发布:linux arp -n 编辑:程序博客网 时间:2024/06/05 14:21
从去年寒假末到现在已经7个月了,在这7个月中通过自学和问其他人的方式自学了javase部分.再此写一篇文章来做一次总结.
javaSE:
1.java基础配置. 别看这个东西不起眼,好几次都死在这个东西上, 因为开发环境用的MyEclipse,有时候会无聊的换换JDK,很多时候一碰就错,而且是那种改不过来的错,, 所以推荐认准一个JDK(比如JDK1.7),除了必须要换的时候,一直用一个就好了,本MyEclipse里web项目默认JDK为1.5(汗...),所以要通过配置右键项目->Preferences->MyEclipse->Project Facets里设置;
2.流程控制语句. 好像没啥说的, 最近在数据库的学习中第一次见到do while的写法是因为ResultSet类在遍历到最后时不能回到0的位置如果停到1的位置再循环就要do while;
3.插一条刚刚想起来的,java的方法在传值的时候除了基本类型外都是指针,但方式为:新创建一个指针指向类实例,再将新创建的指针传入,所以若修改指针的指向, 原值是不受影响的,所以尽量不要在方法中对传入的变量赋值;
4.集合:在list集合里 Vector是多线程安全的, 在Map集合里,HashTable是线程安全的;
5.面向对象.推荐大家在类中尽量使用包装类对象,eg:Integer,Double等. 封装继承等略过;
6.接口和抽象.应该属于面向对象,但拿出来单写,一开始总弄不清接口和抽象的区别. 以我的理解.接口是对一类对象的行为的抽象,比如:吃,喝等等.但是抽象类则是对类的基本描述,例如,动物,植物.等等;
7.io流. 对于io流来说我的印象还是比较深刻的,在5月份作业参加学校组织的java比赛,要做一个可以实现U盘的断点传输的工具,在断点传输这里FileChannel这个类帮了我大忙, 源码我就不贴了 (因为过后一次清理的时候不小心删掉了,而后就有了备份重要项目的习惯).FileChannel这个类属于NIO我的理解即为管道对管道传输,会比io传输快大约1/3的时间,而且可以通过标记进行部分传输,而我就是基于这部分来做的比赛项目;
8.多线程. 关键字有 Thread.Runnable.synchronized.wait.notify这几个.一个一个来说
1)Thread,线程类,有start方法,可以开启新的线程,而后面的wait和notify方法都是他的
2)Runnable 线程接口,通过重写run方法来实现线程,若想运行则要new Thread(Runnable类实例).start来执行
3)synchronized线程锁,可以加锁来使一个类只能有一个线程同时访问,
4)wait线程等待
5)notify线程释放
9.反射.我比较喜欢的一章,在好多地方使用反射都会超乎寻常的简单比如在数据库的遍历中,对model类使用反射来填充类实例会比手打简单好多,但是,在修改的时候,会比平时困难很多.可能是我学艺不精的缘故.推荐大家多用反射,真的好用;

本小弟是java新人 也是IT新人,请大家多多指正.

ps: 以后发帖会侧重于具体问题的解决,会是我遇到的问题.