Java基础面试题总结之简述题

一,数组的优缺点

在Java核心技术卷1中写到数组是一种数据结构,用来储存同一类型值的集合。

优点:

1,按照索引查询元素速度快,效率高

2,能存储大量数据 

3,按照索引遍历数组方便

缺点:

1,长度固定不变

2,采用连续存储空间,删除环绕添加效率低下

3,无法直接保存映射关系

4,缺乏封装,操作繁琐

二,使用三种方式定义并且初始化数组

1,默认初始化

数组元素相当于对象的成员变量,默认值跟成员变量的值一样。数字0,charu0000,布尔false,引用null。

2,动态初始化

int[] a = new int[2];

a[0]=1;

a[1]=2;

3,静态初始化

int b = {1,2,3};

三,简述你目前所了解的条件结构有哪些?

1,if(条件){

  语句1

  语句2

  ...

     }

2,if(){

      }else{

   }

3,if...else if

四,简述你目前所了解的循环结构有哪些?

1,while(循环条件){

  语句

      }

如果开始循环条件的值为false,则while循环体一次也不执行。

2,do{

  语句

  }while(循环条件);

先执行语句(通常是一个语句块),再检测循环条件;然后重复语句,再检测循环条件,以此类推。

3,for(int i = 1;i <= 10;i++){

    System.out.println(i);

  }

for语句的第1部分通常用于对计数器初始化;第2部分给出每次新一轮循环执行前要检查的循环条件;第3部分指示如何更新计数器。

当在for语句的第1部分中声明了一个变量之后,这个变量的作用域就为for循环的整个循环体。

若果在for循环体内部定义了一个变量,这个变量就不能在循环体之外使用。以此,如果希望在for循环体之外使用循环计数器的最终值,就要确保这个变量在循环语句的前面且在外部声明。(引用于Java核心技术卷1)

int i;

for(int i = 1;i <= 10;i++){

   ...

}

五,现有一个int类型长度为100的数组,请分别使用for循环和while循环实现数组遍历

for循环

1 int[] arr = new int[100];
2 for(int i = 0,len=arr.length; i < len; i++) {
3            
4 }        

增强for循环

1 int[] arr = new int[] {0,1,2,3,4,5,6,7,8,9};
2 for(int i : arr) {
3     System.out.println(i);
4 }

while循环

1 int[] arr = new int[100];
2 int i = 0;
3 while(i<arr.length) {
4     System.out.println(arr[i]);
5     i++;
6 }    

六,简述函数的四种形态(Java中是方法)

1,对象调用

2,方法调用

3,构造调用

4,静态调用

说实话,题意我不是很理解,找了很久答案,没找到,不知道是不是这4个,希望有大佬指出。

七,请描述你对函数(方法)定义时参数与返回值的使用

1,参数

①,形式参数:在方法定义阶段就明确了,因为它们仅仅是一个变量。

②,实际参数:在方法得到调用阶段就必须要传入一些参数及其它们类型和范围都是正确的,才能正确赋值。嗯?对,其实传递参数的本质就是变量的赋值!!!

2,返回值

①,如果方法的返回类型为 void ,则方法中不能使用 return 返回值。

②,方法的返回值最多只能有一个,不能返回多个值。

③,方法返回值的类型必须兼容,也就是说如果返回值类型为 int ,则不能返回 String 型值。

④调用带返回值的方法时,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。

参考https://blog.csdn.net/applehth/article/details/75437522
https://blog.csdn.net/u013003505/article/details/78720144
八,简述在系统环境变量中配置JDK
九,简单描述JVM的结构以及JVM的作用
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
1,结构
Java虚拟机主要分为五大模块:类装载器子系统、运行时数据区、执行引擎、本地方法接口和垃圾收集模块。
2,作用
java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。
https://blog.csdn.net/qq_38621334/article/details/81628193
十,什么是JRE?什么是java文件?什么是.class文件?
1,JRE
java运行环境,为java的运行提供了所需环境。
2,java文件
.java 文件是源码 , 经过编译器编辑之后 , 编译成 .class 文件 , .class文件是字节码文件 , 在java项目运行时 , 所有.class都依赖于java运行环境 , 也就是 jre , 在jre中 , .class文件被解析成机器可识别的语言 , 然后得到执行 。
3,.class文件

.class 文件是.java的编译文件。在系统中的jvm只认识.class的二进制编码文件。.class文件就是运行在jvm上的java程序。

原文地址:https://www.cnblogs.com/YancyL/p/11245855.html