zoukankan      html  css  js  c++  java
  • 读书笔记--《java语言程序设计--基础篇》

    一、概述:
        这是读的第一本英文原版的专业书籍,总的来说,因为自己也有一些基础,读起来并不是非常的费劲。
    前半部分主要是介绍java的相关语法,正好借着这样的机会巩固了一下自己的码代码的能力,基本上把书中
    的代码都打了一遍,前面的部分主要是用的notepad++来写的,notepad++ 也有代码提示功能,用起来还是挺
    不错的,但是用cmd 来编译,连接,javac 然后java 执行,似乎很容易出现编码格式方面的问题。后半部分
    主要是利用Myeclipse来写的,也尝试了一下 intelliJ idea ,但是由于用Eclipse比较习惯的原因,不太
    适应它的快捷键,写起来不是很爽,于是作罢。
        中间还尝试过将java程序打包起来,让它能在未安装jre的机器上运行,中间试了Jbuilder,exe4j,
    install4j,exe4j使用步骤还算简单,(但实际上很多选项我都忽略了),它能将java程序打包成exe
    文件,但仍需要jre的支持。其他的使用起来就更加的复杂了。后来想了想,在win环境下的exe 程序,还算
    拿c#,c++之类的写好了。实际上基本语法的差别并不是非常的大。
    二、思考(总的来看):
        1、java环境配置的问题,jdk是开发者使用的开发工具,其中主要包括了jre,说明文档,一些示例代码,
    以及源代码。其中非常重要的是jdk根目录下的bin目录中,可以直接将其添加到path目录中,它里面包含了
    java.exe,javac.exe,等文件。至于jre呢,是java runtime environment, 是执行java程序必须的环境,它
    包含了jvm,即java虚拟机,负责java字节码的解释。
        2、封装(encapsulation),继承(inheritance),多态(polymorphism),首先,封装主要说的是写类
    时注意做到一个高内聚,即如同一个黑箱,仅仅对外公开必要的方法与变量,而对仅仅用于内部的方法,变量
    使用private关键字。继承,即是最大的体现了一个代码的复用性,通过extends关键字,或者implement接口,
    实现代码的复用。(这一个可以参看chapter15,是继承的一个非常好的例子)非常好的利用了java继承时构造
    函数的调用关系。多态,主要是通过类的向上转型来体现。
    三、代码说明
        将书中的代码基本上打了一遍,下面就这些做一个介绍,方便自己的复用。
        chapter2:
            Time.java :实现功能,将系统的 totalMilliseconds 化为北京时间,由于8小时时差,要进行一个
            加8处理。实际上,java的date 类就实现了这个功能。
            TestScanner.java :利用scannner实现控制台输入。
            ShowInput.java :功能是将用户输入的内容显示在一个dialog上。用了JOptionPane。
            DisplayUnicode.java :以unicode 16bit 编码,即"u6b22u8fceu03b1"。
            ComputeLoan.java: 输入贷款以及返回每月payment.
            ComputeArea.java :
        chapter3:
            ReadFile.java :无法读取文件,代码有错误。。但可以编译通过。 2015.5.25
            Sub.java :出一道减法题,判断答对了没有。
        chapter4:
            MultiplicationTable.java :打99乘法表。
        chapter6:
            CountLettersInArray.java :显示随机字符中,各小写字符出现的次数。字符出现次数统计。
            RandomCharacter.java :随机产生字符。
            BinarySearch.java :二分查找法的数列,必须是要经过排序的.查找数字int型。
            InsertionSort.java :插入法排序。
            LinearSearch.java :线性查找法。
            SelectionSort.java :从小到大排列,使用的选择排序的方法.
            TestSystemArray.java :Arrays.sort(a);利用这个现成的方法进行排序。
        chapter7:
            Circle.java ,
            Course.java(一个模拟课程的类),
            Seeds.java(通过种子获取随机数)
            StackOfIntegers.java :该函数模拟了一个整数stack的功能.
        chapter8:
            CheckPalindrome.java :判断一个数列是不是回文数.
            CountEachLetter.java :实现输出一段字符串中各个字母出现的次数
            ReadData.java :读取文件,利用scanner 来读取,注意把input流close掉
            WriteData.java :利用PrintWriter 输出文件。
        chapter9:
            1、通过此例可以看出构造函数调用的顺序,首先调用父函数的无参的构造函数!
        chapter10:
            GenericSort.java :该类的功能是实现数组的排序。
            TestCalendar.java :该类测试了calendar类的使用
        chapter11:
            Rational.java :有理数的基本运算,分数形式显示,用“/”
        chapter12:
            gui方面的程序。showLayout.java,ImageIcon,panels,swingCommonFeature.等。
        chapter13:
            仍然是gui方面的。label ,messagePane,等。
        chapter14:
            gui方面的,有动态时钟,MovableMessagePanel (可以移动的文本,根据鼠标的运动)
            KeyboardPanel(用上下左右键控制一个字母,注意在main方法中,一定要setFoucus,方可移动)
        chapter15:
            gui方面的程序。MultipleWindowsDemo(统计字母出现的次数,并用图表显示)
            radioButton,checkBox等。
        chapter16:
            applet用于网页的小应用,不过用浏览器试了一下,总是用安全问题,或者报classNotfindError.
        chapter17:
            异常处理。throws,throw, try ...catch...finally..
        chapter18:
            java的输入输出流,binary I/O.
        chapter19:
            recursion.递归的思想。TowersOfHanoi,汉诺塔的例子。

  • 相关阅读:
    Serialization and deserialization are bottlenecks in parallel and distributed computing, especially in machine learning applications with large objects and large quantities of data.
    Introduction to the Standard Directory Layout
    import 原理 及 导入 自定义、第三方 包
    403 'Forbidden'
    https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
    These interactions can be expressed as complicated, large scale graphs. Mining data requires a distributed data processing engine
    mysqldump --flush-logs
    mysql dump 参数
    mysql dump 参数
    如果是在有master上开启了该参数,记得在slave端也要开启这个参数(salve需要stop后再重新start),否则在master上创建函数会导致replaction中断。
  • 原文地址:https://www.cnblogs.com/sduycq/p/4564896.html
Copyright © 2011-2022 走看看