java技能树

java技能树

java概览

编辑java源代码

a+b,计算a+b的和,输入包含多组测试数据,每一行包含两个整数 a 和b;输出为和

import java.util.Scanner;
public class Main{
	public static void main (String []args){
		Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            int a = scanner.nextInt();
            int b = scanner.nextInt();
            int c = a + b;
            System.out.println(c);
        }
    }
}

java的运行机制

Java程序运行时,必须经过编译和运行两个步骤。

首先将后缀名为**.java的源文件进行编译,最终生成后缀名为.class的字节码文件。然后Java虚拟机经过类加载(Java虚拟机将编译好的字节码文件加载到内存)**进行解释执行,并将结果显示出来

  1. Java 虚拟机(Java Virutal Machine)简称 JVM ,用于执行 Java 字节码
  2. Java 运行时环境(Java Runtime Evironment)简称 JRE ,用于运行 Java 程序,包含 JVM
  3. Java 开发工具包(Java Development Kit)用于开发Java程序,包含JRE和 Java 编译工具等

****Maven:****专门为 Java 项目提供构建依赖管理支持的工具

  • 构建过程

    • 清理:删除上一次构建的结果,为下一次构建做好准备

    • 编译:Java 源程序编译成 *.class 字节码文件

    • 测试:运行提前准备好的测试程序

    • 报告:针对刚才测试的结果生成一个全面的信息

    • 打包:Java工程:jar包。Web工程:war包

    • 安装:把一个 Maven 工程经过打包操作生成的 jar 包或 war 包存入 Maven 仓库

    • 部署:部署 jar 包:把一个 jar 包部署到 Nexus 私服服务器上

               部署 war 包:借助 Maven 插件(例如 cargo),将 war 包部署到 Tomcat 服务器上
      
  • 坐标

    • groupId:公司或组织的 id
    • artifactId:一个项目或者是项目中的一个模块的 id
    • version:版本号
  • POM

    POM:项目对象模型

    pom.xml 配置文件就是 Maven 工程的核心配置文件

    进入pom.xml所在的目录

    • 清理操作mvn clean 删除target目录
    • 编译操作
      • 主程序编译:mvn compile 编译结果存放目录:target/classes
      • 测试程序编译:mvn test-compile 编译结果存放目录:target/test-classes
    • 测试操作mvn test 测试的报告存放的目录:target/surefire-reports
    • 打包操作:mvn package 打包的结果——jar 包,存放的目录:target
    • 安装操作:mvn install
  • 生命周期

    在任何一个生命周期内部,执行任何一个具体环节的操作,都是从本周期最初的位置开始执行,直到指定的地方。

跨平台

Java是由虚拟机负责解释执行的,而并非操作系统。跨平台性就是说针对不同的操作系统可以编写相同的程序,只需要安装不同版本的虚拟机即可。

java基本语法

Java 中的程序

  • 结构定义语句:声明一个类或方法

  • 功能执行语句:实现具体的功能,英文分号(;)结束,若写成中文的,则会报“Invalid Character(无效字符)”错误信息

  • 严格区分大小写

  • 一个连续的字符串不能分开在两行中书写,但是可"这是第一个"+"Java 程序!”

  • 注释:单行// ;多行/* /;文档注释/* */(JDK提供的javac工具可以直接将源代码里的文档注释提取程一份系统的API文档);

  • 关键字

    • abstract:可以修饰类和方法,但是不能实例化,只能被子类继承
    • ****assert:****断言,assert 表达式:错误信息;
    • boolean:值-true和false(默认)、
    • break:switch和while跳出循环;break flag跳出一些嵌套比较复杂的循环
    • continue:在循环中跳过本次循环。
    • try/catch:catch捕获发生的异常,并应对错误做一些处理**;finally**在处理一些后续的工作。例如关闭网络连接和输入输出流等,若有return,则会强制执行finally
    • default:switch做默认分支;接口实现具体的方法
    • extends:class 子类 extends父类{}-单继承,即子类只能有一个直接父类。但是在private,子类可以访问父类的方法和成员变量。
    • final:修饰变量(将变量变为常量);修饰方法(不能被子类重写);修饰类(不能被继承)。
    • implements:接入接口,接上接口的类必须实现接口的抽象方法
    • instanceof:用于判断类与对象的关系,若a是b的一个实例则为true
    • interface:接口中的方法默认为static
    • native:让Java运行非Java实现的方法
    • strictfp:遵循IEEE-754标准来执行,提高浮点运算的精度,并且减少不同硬件平台之间由于浮点运算带来的差异
    • synchronized:保证原子性和安全性,保证了同一时刻只有一个线程执行该代码。
    • volatile:关键字修饰的变量在多线程中保持同步
  • 标识符

    由任意顺序的大小写字母、数字、下画线(_)和美元符号($ )组成,但标识符不能以数字开头,也不能是Java 中的关键字。

    1.包名-所有字母一律小写,例如 com.itheima. example01。

    2.类名和接口名-每个单词的首字母都要大写,例如 ArrayList、Iterator。

    3.变量名和方法名-的第一个单词首字母小写,从第二个单词开始每个单词首字母大写,例如 lineNumber、getLineNumber。

    4.常量名-所有字母都大写,单词之间用下画线连接,例如 DAY_OF_MONTH。

  • switch

    switch(expression){
        case value :
           //语句
           break; //可选
        case value :
           //语句
           break; //可选
        //你可以有任意数量的case语句
        default : //可选
           //语句
    }
    
  • for

    for(int x=1; x<=10; x++) {
    			System.out.println("HelloWorld");
    		}
    

你可能感兴趣的:(测试开发,java,开发语言)