int,short,long,byte, float,double,char,boolean
1、在类中的位置不同
成员变量:在类中方法外面
局部变量:在方法或者代码块中,或者方法的声明上(即在参数列表中)
2、在内存中的位置不同
成员变量:在堆中(方法区中的静态区)
局部变量:在栈中
3、生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用或者代码块的执行而存在,随着方法的调用完毕或者代码块的执行完毕而消失
4、初始值
成员变量:有默认初始值
局部变量:没有默认初始值,使用之前需要赋值,否则编译器会报错
Java跨平台指的是Java语言编写的应用程序能够运行在不同的操作系统下,而不需要单独为每一个操作系统编写一套应用程序;
安卓应用程序不能直接运行在windows操作系统下,可以通过安装一个模拟器或者虚拟机实现在windows电脑端实现的对安卓软件的使用,java跨平台原理与之类似,主要通过java虚拟机来实现。
*java的跨平台原理:*
通过在不同的平台上安装不同版本的JVM虚拟机,只需要一次编译即可在不同平台的JVM中运行;(一次编译多处运行)
*注:JVM只能运行编译以后的字节码文件 不能运行源文件*
官方为开发者提供了不同版本的JVM,开发人员只要关注Java程序的开发 下载对应操作平台的JVM即可;
JVM(Java Virtual Machine): Java虚拟机,Java程序运行在其中. Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行. JVM 对上层的 Java 源文件是不关心的,它关注的只是由源文件生成的类文件( class file )。 JRE(Java Runtime Environment): Java运行时环境, 也就是我们说的JAVA平台,所有的Java程序都要在JRE下才能运行。包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。 JDK(Java Development Kit): JDK是整个JAVA的核心,包括了Java运行环境JRE,一堆Java工具(javac/java/javadoc等)和Java基础的类库(即Java 提供给我们使用的常用方法)。 jdk>jre>jvm