作为第三遍看java入门书的我把一些java基础知识再回顾一下,顺便记下博客
P.s. 简单的那些知识点我就跳过了,新手还是别看我这篇博客了
java运行过程:
编译程序: .java(源码文件)→.class(字节码文件)
解释程序: .class(字节码文件)在JVM(java虚拟机)上执行
jar文件:
Java Archive File,Java中项目中所有文件打包后的文件,通常里面包含项目的.class文件和一些资源文件(图片,音频)
主方法
public static void main(String args[]){}
CLASSPATH和PATH
前者为所有.class文件的执行路径
后者是操作系统环境变量,指可执行命令的程序路径
注释
//单行注释 /*...*/多行注释 /**...*/文档注释,生成javadoc文档时加入
java生僻关键词
有几个生僻的:native,synchronized,transient,strictfp,volatile,instanceof
(goto和const在java中用不到,是其他编程语言的关键字)
native: native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中。Java语言本身不能对操作系统底层进行访问和操作,但是可以通过JNI接口调用其他语言来实现对底层的访问。
JNI是Java本机接口(Java Native Interface),是一个本机编程接口,它是Java软件开发工具箱(Java Software Development Kit,SDK)的一部分。JNI允许Java代码使用以其他语言编写的代码和代码库。Invocation API(JNI的一部分)可以用来将Java虚拟机(JVM)嵌入到本机应用程序中,从而允许程序员从本机代码内部调用Java代码。
不过,对Java外部的调用通常不能移植到其他平台,在applet中还可能引发安全异常。实现本地代码将使您的Java应用程序无法通过100%纯Java测试。
synchronized:同步声明,一种用法是synchronized(this){}表示同步代码块,还有一种用于声明方法,说明该方法只能同步调用
transient:修饰变量拒绝持久化(拒绝序列化)
strictfp:精确浮点
volatile:修饰变量,线程访