实训1

Vim

vim的配置

这里参考了https://blog.csdn.net/Ac_wolf/article/details/78813438,不在多做赘述。
比较重要的是:
1.语法高亮。可以按原来的配色,按照个人习惯。
2.自动补全。这个可以减少代码的直接输入量,对于效率提高很有帮助。

vim的三种模式

命令模式

未选择文本
  • i 切换到输入模式,以输入字符。
  • x 删除当前光标所在处的字符。
  • : 切换到底线命令模式,以在最底一行输入命令。
  • 在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行。使用gg=G可对整篇代码进行排版。
  • v 从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束。
  • ggVG 选中全部的文本, 其中gg为跳到行首,V选中整行,G末尾
选中文本后
  • d 删除
  • y 复制(默认是复制到”寄存器)
  • p 粘贴 (默认从”寄存器取出内容粘贴)
  • +y 复制到系统剪贴板(也就是vim的+寄存器)
  • +p 从系统剪贴板粘贴

输入模式(Insert mode)

其中大部分是正常的文本操作,需要注意的是
  • 鼠标不能随意改变光标的位置
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

底部命令模式

最常用的命令
  • q 退出程序
  • w 保存文件
  • wq 保存并退出
  • q!不保存直接退出

Vim总结

是很强大的编辑器,支持多种插件,但是需要大量的联系。
其根本优势在于解决了键鼠分离的问题,熟悉之后几乎键盘的所有键都能成为功能键。但是确实是一件很困难的事。

JAVA

jdk的安装

sudo apt-get install default-jdk
jdk安装完成后注意添加环境变量
vim ./bashrc

添加环境变量
source ./bashrc

java的基本语法

public class HelloWorld {
public static void main(String[] args) {
    System.out.println("Hello World");
}
}

java编译运行基本语法

$ javac HelloWorld.java
$ java HelloWorld
Hello World
注:JAVA的基础数据类型和C++极度相似,数组,条件分支结构也都大同小异。

值得注意的有三点:

  1. java继承只能有一个父类,这一点可以通过接口(Interface)来实现C++的继承多父类效果,
  2. java具有垃圾回收机制,绝大多数情况下不需要程序员手动释放内存,这也是java的优势之处。
  3. java取消了指针机制,可以通过引用和内部类等语法来实现指针的部分操作。

javaGUI

主要分为swing和awt两种,其中swing的更新频率相对来说会慢很多。
基本的类型

JFrame//窗口框架
frame = new JFrame("My Calculator");
JPanel //存储相同类型元素
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(2, 5));//设置行列
JTextField //文本框
xfield.setText("12");
JButton//按钮
div = new JButton("/");
每个数据类型都有很多的相关函数,具体请参见http://tool.oschina.net/apidocs/apidoc?api=jdk-zh

Ant

功能

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在实验中,主要熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。

Build.xml

<?xml version="1.0"?>

项目名称

<project name = "javacProject" default="run" basedir="."/>

清除

<target name = "clean">
<delete dir = "build"/>
</target>

编译

<target name = "compile" depends = "clean" >
        <mkdir dir = "build/classes"/>
    <javac srcdir="src" destdir = "build/classes"/>
</target>

运行

<target name = "run" depends = "compile">
    <java classname = "Calculator" fork= "true">
    <classpath>
        <pathelement path = "build/classes"/>
    </classpath>
    </java>
</target>

命令行使用ant

ant + 要执行的targetname//没有的话默认全部执行

Junit

添加环境变量和jdk部分相似

以下为具体环境变量代码

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_91
export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:/home/adminstrator/Downloads/junit-4.9.jar:\$CLASSPATH
export PATH=\$JAVA_HOME/bin:\$JAVA_HOME/jre/bin:\$PATH:\$HOME/bin  

Example

要测试的类
import java.util.*;

public class HelloWorld {
String str;
public void hello() {
  str = "Hello World!";
}
public String getStr() {
  return str;
}
}
测试类
import static org.junit.Assert.*;
import org.junit.Test;

public class HelloWorldTest {
@Test
public static void main(String[] args) {
    HelloWorld helloworld = new HelloWorld(); 
    helloworld.HelloWorld();
    assertEquals("Hello World!",helloworld.getStr());
}
}

测试

javac HelloWorldTest.java
java -ea org.junit.runner.JUnitCore HelloWorldTest

补充(junit ant合并使用)

<?xml version="1.0" encoding="utf-8"?>

<property name = "output" value = "bin"/>
<property name = "src" value = "src"/>
<property name = "test" value = "test"/>
<property name = "report" value = "report"/>

<target name = "clean">
    <delete dir = "${report}"/>
</target>


<target name = "compile" depends = "clean" >
        <mkdir dir = "${report}"/>
    <javac srcdir="${src}" destdir = "${output}" includeantruntime="true">
        <classpath>
            <fileset dir= "." includes="**/*.jar"/>
            <pathelement path = "${output}"/>
        </classpath>    
    </javac>
    <echo>compilation complete</echo> 
</target>


<target name = "testcompile" depends = "clean">
    <fileset dir= "lib" includes="**/*.jar"/>
    <javac srcdir = "${test}" fork= "true" includeantruntime="true"/>
    <echo>test compilation complete</echo>
</target>

<target name = "allcompile" depends="compile, testcompile"></target>
<target name = "run" depends="compile">
    <java classname="HelloWorld" classpath ="${output}"/>
</target>

<target name = "test" depends="allcompile">
    <junit printsummary="on" fork="true" showoutput="true">
    <classpath>
        <fileset dir= "." includes="**/*.jar"/>
        <pathelement path = "${output}"/>
    </classpath>
    <formatter type="xml"/>
    <batchtest todir="${report}">
        <fileset dir="${output}">
            <include name = "**/*Test.*"/>
        </fileset>
    </batchtest>
    </junit>
    <junitreport todir="${report}">
        <fileset dir="${report}">
            <include name="Test-*.xml"/>
        </fileset>
        <report todir="${report}">
        </report>
    </junitreport>
    <java classname="org.junit.runner.JUnitCore">
        <arg value="HelloWorldTest"/>
        <classpath>
            <pathelement path="${output}"/>
            <pathelement path="./junit-4.9.jar"/>
        </classpath>
    </java>
</target>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值