学习C与Java的类比
大学的时候选修过一个学期日语,当时日语老师对我们说:“对于中国人来讲,学习英语一般是哭着进去,笑着出来;学习日语则是笑着进去,哭着出来”。意思就是说学习英语的时候,入门的时候比较困难,但是只要坚持学下去,转变了汉语的思维习惯时,最近可以把英语学得很好。而日语不同,一方面因为其与汉语的紧密关系而在入门时让我们有似曾相识的亲切感,而另一方面又因为其复杂的语法和多变的句型让学习者在逐渐深入的过程中感到举步维艰。
突然想到学习C语言和Java语言有这种相同的感受。在刚开始接触程序设计时,一般都会以学习C语言为基础,因为其结构化的程序设计思想和简单灵活的特点,让学习者可以在很短的时间内运行处自己第一个“Hello,World!”程序。而在学习Java的时候,重点的基础讲解往往放在了面向对象的概念之上,因为无法迅速对类啊,对象啊,多态啊等等多种改进高效地掌握,所以往往即使照猫画虎地打印出了自己的“Hello,World!”,也还是不算得入门。而随着学习的深入,渐渐理解了什么叫面向对象,什么叫封装继承多态,加上一段时间的实践开发,程序员能很快地根据其他辅助的建模工具设计出自己优良得代码。而C语言不同,因为其结构化的设计理念,如果要设计出好的程序,往往需要长久得锻炼,而这个锻炼还需要建立在对计算机底层以及系统结构的理解之上。
所以,也可以这么说“学习C语言是笑着进入,哭着出来;学习Java是哭着进去,笑着出来”。
相关文档:
/**
* 创建缩略图片
*
* @param orgpath
* @param filename
* @return
* @description: 描述
*/
//此方法对于ssh项目并且针对 上传功能时,非常有用
public static Boolean createAbbreviateImg(String orgpath, String filename) {
Boolea ......
在Java中,synchronized关键字为防止资源冲突提供了支持,其作用域有二种:
实例范围。
对象实例范围内synchronized使用的两种形式:
实例范围同步方法
publicd class syncTest {
…
synchronized void aMethod() {
//需要同步使用的代码
}
}
synchronized aMethod(){}可以防止多个线程同时 ......
要使用java caching system,需要下面这几个包:jcs.jar,concurrent.jar,commons-logging.jar, commons-lang.jar,commons-collection.jar这几个包,在java工程里面,
首先新建一个使用jcs的配置文件:cache.ccf,文件名不能改。
# DEFAULT CACHE REGION
# sets the default aux value for any non configured ca ......
java文件过滤器的使用代码如下:
测试代码:package file;
import java.io.File;
public class fileFilter {
public static void main(String[] args) {
File file = new File("d:\\");//设置文件路径
for (File fileList : file.listFiles(new file.MyFileFilter())) {
......