文章目录
学习JAVA过程中遇见的常见试题
JAVA常见试题
0. JDK 、JRE和JVM的区别
答:
JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开 发环境和运行环境。
JRE:Java Runtime Environment 的简称,Java 运行环境,为 Java 的运行 提供了所需环境。 具体来说 JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器 Javac,还包 含了很多 Java 程序调试和分析的工具。简单来说:如果你需要运行 Java 程序,只需安装 JRE 就可以了,如果你需要编写 Java 程序,需要安装 JDK。
JVM :Java Virtual Machine的简称。即java虚拟机。
1.什么是JavaSE、JavaME、JavaEE
答:
JavaME、JavaSE、JavaEE都是Java语言平台版本。
Java ME(Java Micro edition):为在移动设备和嵌入式设备上运行的应用程序提供环境。
Java SE(Java Standard Edition):包含了支持 Java Web 服务开发的类,并为 Java EE提供基础。主要用于客户端图形界面软件(桌面程序)的开发
JavaEE(Java Enterprise Editon):用于服务器、桌面、嵌入式环境和实时环境中使用的 Java 应用程序。主要用于互联网 B/S 架构软件的开发
2.什么是jvm跨平台
答:
java中写好的代码可以在不同的平台中运行,称之为跨平台。
3.package包的命名规范是什么
答:
全小写 反域名
com/org/java :代码的使用限制 com 代表公司企业组织 org 代表公益组织 java 代表官方源代码
mmm : 公司名称
day01: 项目名称
test : 包的作用
例如:package com.mmm.day01.test;
4.package的作用和约束是什么
答:
package关键字,代表当前文件所在的包是哪个,后面跟包名,这一句代码,必须和当前所在包的位置匹配,并且必须要出现在第一行。
例如:package com.mmm.day01.test;
5.在一个.java源文件中 可以有多少个类[外部类]? 有什么约束?
答:
在同一个.java源文件中可以有多个类,但是只能有一个公共类public,并且公共类的名字要和文件名相同。
6.JAVA中八种基本数据类型和其所占字节数分别是什么
答:
数据类型 | 关键字 | 内存占用 |
---|---|---|
字节型 | bity | 1字节 |
短整形 | short | 2字节 |
整形 | int | 4字节 |
长整形 | long | 8字节 |
单精度浮点型 | float | 4字节 |
双精度浮点型 | double | 8字节 |
字符型 | char | 2字节 |
布尔类型 | boolean | 1字节 |
7.Java中char类型是否能存储汉字?为什么?
答:
char类型能存储汉字,
char类型为2字节,一个汉字也为2字节。
8.前置++ 和 后置++ 的区别?
答:
都是自增1,
前置++为先赋值后自增,后置++为先自增后赋值。
例如:
public static void main(String[] args) {
int a = 10;
int b = a++;
int c = ++a;
System.out.println(a + "---" + b + "----" + c );
//输出结果为 12---10----12
}
b 是 10 的原因是: 将 a++ 的结果赋值给 b ,此时是后置++,先++ a变成11 ,再将a之前的值赋值给b。也就是说 后置++ 是将之前的值用来赋值 所以b就是10
c 是 12 的原因是: 将 ++a 的结果赋值给 C 此时是前置++ 先++ a变成12 将a之后的值赋值给c。也就是说 前置++ 是将++之后的值用来赋值 所以c就是12
a 是 12 的原因是: 无论前置++ 还是后置++ 都是自增一, a初始值是10 ,经过了两次++ ,所以a是12。
9.以下代码是否有问题,为什么?
public static void main(String[] args) {
short a = 20;
a = a+5;
short b = 20;
b += 5;
}
答:
a=a+5中,5为int型,运算后结果为int型,不能赋给短整型。
10.String是基本数据类型吗?
答:不是,String属于对象
JAVA中只有bity、short、int、long、float、double、char、boolean八种基本数据类型。