studyreport

Vi, Java, Ant, Junit的自学报告

1. vi/vim编辑器的使用

1.1 vi/vim简介

vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制,这是其他编辑程序所没有的。vi 编辑器并不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。没有菜单,只有命令,且命令繁多。vi有3种基本工作模式:命令行模式、文本输入模式和末行模式。

vim是vi的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用。

vi有3个模式:编辑模式、命令模式、末行模式。

编辑模式:在此模式下可以输入字符,按ESC将回到命令模式。
命令模式:可以移动光标、删除字符等。
末行模式:可以保存文件、退出vi、设置vi、查找等功能(末行模式也可以看作是命令模式里的)。

1.2 vi基本操作
1.2.1 进入编辑模式
命令含义
i和Ii在光标前插入,I在行首插入
a和Aa在光标后插入,A在行末插入
o和Oo在光标所在行下一行插入,O在光标所在行上一行插入
1.2.2 移动光标
命令含义
h光标向左移动
j光标向下移动
k光标向上移动
l光标向右移动
H、M、L光标移动到到可见屏幕第一行(H)、中间行(M)、最后一行(L)
^和$^移动到行首,$移动到行末
G和ggG文档最后一行,gg文档第一行
ctrl+f、ctrl+b向前翻屏、向后翻屏
ctrl+d、ctrl+u向前半屛、向后半屛
{ 和 }{向上移动一段,}向后移动一段
w和b向前移动一个单词,向后移动一个单词
1.2.3 撤销命令
命令含义
u一步一步撤销
ctrl+r反撤销
1.2.4 重复命令
命令含义
.重复执行上一次操作的命令
1.2.5 复制粘贴
命令含义含义
yy和 n yy 和y$ y^ yy复制当前行,5 yy复制5行
p在光标所在位置向下新开一行粘贴
1.2.6 选择文本
命令含义
v 和 Vv选择单个字符,V选择整行
<<和>>选择文本之后,向左缩进,向右缩进
1.2.7
命令含义
命令模式下,r和Rr替换当前字符,R替换光标后的字符
末行模式下,/ + strn查找下一个,N查找前一个
末行模式下,%s/abc/123/g将文件中所有abc替换为123
末行模式下,1, 10s/abc/123/g将第一行至第10行之间的abc替换成123

2. 熟悉JDK环境及JAVA语言学习

2.1 JAVA简介

Java 是由 Sun Microsystems 公司于1995年5月推出的 Java 面向对象程序设计语言和 Java 平台的总称。由 James Gosling 和同事们共同研发,并在1995年正式推出。

Java分为三个体系:

  • J2SE(Java2 Platform Standard Edition,java平台标准版)
  • J2EE(Java 2 Platform Enterprise Edition,java平台企业版)
  • J2ME(Java 2 Platform Micro Edition,java平台微型版)。

2005年6月,JavaOne 大会召开,SUN 公司公开 Java SE 6。此时,Java的各种版本已经更名以取消其中的数字“2”:J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java ME

2.2 JAVA主要特性
  • Java语言是简单的

    Java 语言的语法与 C 语言和 C++ 语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java 丢弃了 C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而担忧。

  • Java语言是面向对象的

    Java 语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements)。Java 语言全面支持动态绑定,而 C++ 语言只对虚函数使用动态绑定。总之,Java 语言是一个纯的面向对象程序设计语言。

  • Java语言是分布式的

    Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括 URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

  • Java语言是健壮的

    Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。

  • Java语言是安全的

    Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了 Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让 Java 应用设置安全哨兵。

  • Java语言是体系结构中立的

    Java 程序(后缀为 .java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 .class 的文件),然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。

  • Java语言是可移植的

    这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。

  • Java语言是解释型的

    如前所述,Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。

  • Java是高性能的

    与那些解释型的高级脚本语言相比,Java 的确是高性能的。事实上,Java 的运行速度随着 JIT(Just-In-Time)编译器技术的发展越来越接近于 C++。

  • Java语言是多线程的

    在 Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(Runnable)的构造子将一个实现了 Runnable 接口的对象包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。值得注意的是 Thread 类已经实现了 Runnable 接口,因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java 语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为 synchronized)。

  • Java语言是动态的

    Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。

2.3 JDK环境

三步:下载、安装、配置环境变量。

2.4 编译运行HelloWorld
  • Helloworld.java
public class Helloworld{
        public static void main(String[] args) {
                System.out.println("hello world!");
        }
}
  • 编译运行

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c8XnyK9l-1573371514905)(/home/hrd/图片/2019-11-09 11-12-56屏幕截图.png)]

3. 熟悉Ant环境,并利用Ant实现HelloWorld的自动编译

3.1 配置Ant
3.1.2 下载解压

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mktYwxr0-1573371514906)(/home/hrd/图片/2019-11-09 11-38-52屏幕截图.png)]

3.1.2 设置环境变量并测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DaDfNZ9h-1573371514908)(/home/hrd/图片/2019-11-09 11-39-01屏幕截图.png)]

3.2 编译运行Helloworld.java

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tAKgnOJJ-1573371514908)(/home/hrd/图片/2019-11-09 15-32-58屏幕截图.png)]

4. 学习JUnit,利用Ant、JUnit测试通过HelloWorld

4.1 JUnit概述

JUnit是一个Java编程语言的单元测试框架。

特点:

  • JUnit 是一个开放的资源框架,用于编写和运行测试。
  • 提供注释来识别测试方法。
  • 提供断言来测试预期结果。
  • 提供测试运行来运行测试。
  • JUnit测试允许你编写代码更快,并能提高质量。
  • JUnit优雅简洁。
  • JUnit测试可以自动运行并且检查自身结果并提供即时反馈。
  • JUnit测试可以被组织为测试套件,包含测试用例,甚至其他的测试套件。
  • JUnit在一个条中显示进度。
4.2 利用Ant、JUnit测试通过HelloWorld
4.2.1 HelloWorld.java

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BO8dMyO1-1573371514910)(/home/hrd/图片/2019-11-10 10-35-23屏幕截图.png)]

4.2.2 HelloWorldTest.java

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N9SOYgEY-1573371514911)(/home/hrd/图片/2019-11-10 10-35-37屏幕截图.png)]

4.2.3 build.xml

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AIdjEIOJ-1573371514912)(/home/hrd/图片/2019-11-10 10-37-58屏幕截图.png)]

4.2.4 利用Ant编译运行测试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值