一、Java简介
Java语言是编译后再解释执行,Java源码是通过编译生成一种特殊的.class的中间字节码文件,然后再有JVM进行解释执行,JVM(Java虚拟机)是运行在操作系统中,用来屏蔽的系统间的差异。Java虚拟机处理编译后的字节码,并根据不同的系统来申请相应的资源,这样就可以保证程序的运行正常,在Java虚拟机的基础之上,由解释器来解释执行字节码文件。
.class
运行时解释器 J RE
jdk
平台无关
平台相关JVM
OS 类库工具
Java虚拟机+解释器=JRE(Java RunTime Environment)Java运行环境
JRE+Java系统类库=JDK(Java Deveple Kit)JAVA开发工具包
Java简单特性:
① JVM本身是不能垮平台的。
② java语言对指针进行了上层的封装,它保证能够通过这个指针(引用),来访问有效的内存单元。
③ java语言不允许多继承,使继承关系成树状图,每个类都只能由一个父类。
④ java语言的开发效率高,但执行效率低。(相当于c++的55%)
⑤ java的垃圾回收机制,在java中new的对象不需要向c++一样进行delete操作,JVM会根据情况回收垃圾对象(懒汉机制,等待资源没有的时候才回收)。我们只能够建议JVM进行垃圾回收,例如(System.gc() RunTime.gc()这两个方法就是建议JVM进行垃圾回收的方法)。
JDK —— java开发工具包(类库和运行命令)
JRE —— java运行环境
JVM —— java虚拟机(解释执行的核心,对字节码进行翻译成运行环境的机器码,它可以屏蔽平台差异。但JVM是不跨平台的。)
二、使用Java是需要进行配置的环境变量
JAVA_HOME, 指明JDK安装的位置;
CLASSPATH, 指明类文件的位置;
PATH, 指明命令的可执行文件的位置。
例:
Unix/Linux中JAVA环境变量的配置
在(.profile(Unix) /.bash_profile(Linux) /.bashrc(Linnx))这些文件中作以下配置
JAVA_HOME=xxx/xxxx (指定JDK的安装目录)
CLASSPATH=. (指定类文件的所在位置,类路径)
PATH=…:$JAVA_HOME/bin:. (指明JAVA需要使用的命令的位置)
Java的一些特点:
① Java是一种纯面向对象的语言,在Java中所有的方法必须写在class(类)中,包括main方法。Java源文件都是以“.java”为后缀的。
② java源文件的文件名必须和Java源文件中定义的public class(公开类)的类名相同。在Java源文件中只能写一个public class(公开类),一个Java源文件中可以写多个class(类),也可以在一个类中写另一个类,这是内部类的写法,在以后的课程中会讲到,一般我们在源文件中的类是并列的,也就是:
public class Test1{} class Test2{}
③ Java中的(package)包,是一种特殊的目录结构,他会要求编译好的文件在指定的目录结构中,要使用包时需要使用package关键字。
注意:package关键字必须出现在代码的第一行,下面的代码中写了包,编译之后的.class文件需要在/test/java下,并且包在一个Java源文件中只能定义一个
例:第一个Java程序
package test.java; //java中的一种用以区分同名类的设置——包
public class HelloWorld{
public static void main(String[] args){ //主方法,JVM主线程
System.out.println("Hello world");
}
}
相应的在写完源代码保存的文件名必须和原码中写的 public class后写的类名一致,也就是HelloWorld.java
java源代码中的main方法的定义写法。
方法是程序的入口。
public static void main(String[] args){
System.out.println("Hello world");
}
java源文件也要先编译,使用javac xxx.java格式的命令得来编译,要运行一个java程序时,需要使用java命令,java 类名,运行编译后的字节码(.class)文件。
定义包结构要放在有效代码的第一行,package xxx.xxx,包的定义在一个程序中只能由一个,在加上包定义之后编译可以使用javac -d 路径 xxxx.java,这个-d这个命令行的参数可以指定包结构的位置“.”代表当前目录。在运行时要使用类的全限定名。
java xxx.xxx.xxxx用包名以点分隔。运行时要在包结构的上一层目录来运行。
package xxx.xxx; 定义包名
public class Xxx{}
xxx.xxx.Xxx,包名加类名,就是类的全限定名
例:
我们以上面的第一个java文件为例,那个文件中定义的类的全限定名就是test.java.HelloWorld
分享到:
相关推荐
赠送jar包:aliyun-java-sdk-core-4.3.9.jar; 赠送原API文档:aliyun-java-sdk-core-4.3.9-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.3.9-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
赠送jar包:aws-java-sdk-core-1.11.939.jar 赠送原API文档:aws-java-sdk-core-1.11.939-javadoc.jar 赠送源代码:aws-java-sdk-core-1.11.939-sources.jar 包含翻译后的API文档:aws-java-sdk-core-1.11.939-...
赠送jar包:aliyun-java-sdk-core-4.5.30.jar 赠送原API文档:aliyun-java-sdk-core-4.5.30-javadoc.jar 赠送源代码:aliyun-java-sdk-core-4.5.30-sources.jar 包含翻译后的API文档:aliyun-java-sdk-core-4.5....
赠送jar包:aliyun-java-sdk-core-4.5.10.jar; 赠送原API文档:aliyun-java-sdk-core-4.5.10-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.5.10-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
ckeditor-java-core-3.5.3-javadoc.chm
aliyun-java-sdk-core-3.2.3 aliyun-java-sdk-core-3.2.3aliyun-java-sdk-core-3.2.3
Core Java Volume I--Fundamentals(10th) 英文epub 第10版 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
赠送jar包:aws-java-sdk-core-1.12.160.jar; 赠送原API文档:aws-java-sdk-core-1.12.160-javadoc.jar; 赠送源代码:aws-java-sdk-core-1.12.160-sources.jar; 赠送Maven依赖信息文件:aws-java-sdk-core-1.12....
赠送jar包:aws-java-sdk-core-1.11.939.jar; 赠送原API文档:aws-java-sdk-core-1.11.939-javadoc.jar; 赠送源代码:aws-java-sdk-core-1.11.939-sources.jar; 赠送Maven依赖信息文件:aws-java-sdk-core-1.11....
ckeditor-java-core-3.5.3.jar ckeditor-java-core-3.5.3.jar ckeditor-java-core-3.5.3.jar ckeditor-java-core-3.5.3.jar ckeditor-java-core-3.5.3.jar
aliyun-java-sdk-core-3.4.0.jar
赠送jar包:aliyun-java-sdk-core-4.3.9.jar; 赠送原API文档:aliyun-java-sdk-core-4.3.9-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.3.9-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
赠送jar包:aliyun-java-sdk-core-4.5.10.jar; 赠送原API文档:aliyun-java-sdk-core-4.5.10-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.5.10-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dysms-api包
Core Java Volume II--Advanced Features(10th) 英文azw3 第10版
赠送jar包:aliyun-java-sdk-core-4.5.30.jar; 赠送原API文档:aliyun-java-sdk-core-4.5.30-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.5.30-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
aliyun-java-sdk-dysmsapi-1.0.0.ja jar aliyun sdk java core
在这个场景中,"aliyun-java-sdk-core-4.1.0.jar" 是一个Java版本的核心SDK,主要用于与阿里大于的各项服务进行交互,特别是短信发送功能。 一、阿里大于SDK核心功能 1. **身份验证**:SDK提供了基于AccessKey的...
--Fundamentals 9th Edition).rar》是一个包含两本经典Java编程书籍的压缩文件,分别对应《Core Java Volume I--Fundamentals 9th Edition》和《Core Java Volume II--Advanced Features 9th Edition》的第九版。...
Java核心技术第九版Java7,Mobi格式电子书。Core Java Volume I--Fundamentals (9th Edition)