一、java数据类型
1.java基本数据类型
2.java引用类型
在java中除了基本数据类型外,其余的数据类型都是引用数据类型。
常见的引用数据类型:数组、对象等
引用数据类型默认值:null
3.例题
public class Test {
public static void main(String args[]){
int[]a=new int[10];
System.out.println(a[0]);
}
}
//答案:0
二、什么是JVM?什么是JDK?什么是JRE?三者之间的联系是什么?
1.JVM
JVM 即 Java Virtual Machine(java虚拟机)
须知:
- jvm是java实现跨平台的最为核心的部分
- jvm只关注被编译的.class文件不会关注.java源文件
- .class文件在jvm上执行,通过jvm特有的指令集将其解释给操作系统执行。
2.JDK
JDK即 Java Development Kit(java开发工具包)
须知:
- 使用java语言开发程序必须安装配置jdk
- jdk安装目录中的文件夹
- bin
- 各种命令工具,例如:javac.exe(java源码编译器)、jconsole.exe(监控工具)、jvisualvm.exe(分析工具)
- include
- 与JVM交互C语言用的头文件
- jre
- java运行环境
- lib
- 类库
- db
- 安装Java DB的路径
- src.zip
- Java所有核心类库的源代码
- javafx-src.zip
- jdk1.8新加的,存放JavaFX脚本,JavaFX是一种声明式、静态类型编程语言
3.JRE
JRE即 Java Runtime Environment(java运行环境)
须知:
- 是运行基于java编写的程序所不可缺少的运行环境,它是一个开发环境并不包含任何开发工具
- 包含了JVM标准实现及java核心类库,是运行java不可缺少的组件
4.三者间的联系
- JDK是java程序开发时的开发工具包,包含java运行环境的JRE
- JDK、JRE内部都包含了JVM虚拟机
- JVM包含了java应用程序的类的解释器以及类加载器
三、Java重载重写是什么?有什么区别?
1.重写
重写:发生在子类继承父类,在子类中对父类的成员方法名称保留,重新编写方法内容,更改访问权限,如果更改返回值类型的话必须是父类返回值类型的子类
须知:
- 参数列表必须严格相同(参数个数、顺序、参数类型)
- 访问权限更改的话不能比父类访问权限更低
- 更改返回值类型的话必须是父类返回值类型的子类
- 声明为final、static、private的方法不能被重写
- 重写方法所能抛出的异常必须是父类抛出异常的子类
2.重载
重载:即在一个方法中存在多个重名但参数列表不同的方法
须知:
- 重载必须严格满足:
- 方法同名
- 参数列表不同(参数个数、参数类型、参数顺序)
- 重载可以修改访问权限、返回值类型、抛出异常
3. 区别
- 作用范围:重写发生在子类与父类继承中,而重载发生在同一个类中
- 参数列表:重载严格要求参数列表不同而重写严格要求参数列表相同
- 返回类型:重载可以修改返回值类型,重写修改返回值类型必须是父类返回类型的相同类或其子类
- 访问权限:重载可修改,重写有限制
- 抛出异常:重载可修改,重写有限制