第一阶段简答题汇总

本文汇总了关于Java语言基础的问题,涵盖了JDK、JRE、JVM的关系,Java跨平台原理,代码运行过程,标识符命名规则,char类型特性,注释定义,包和类的创建,驼峰命名法,隐式和显示转换的区别,基本类型运算规则,位运算符&与逻辑运算符&&的区别,三元运算符,switch表达式的数据类型,结束多层循环的方式,以及分支和循环结构的种类和语法。
摘要由CSDN通过智能技术生成

目录

java语言基础

1.注释:

2.定义包:  

3.定义类:

4.驼峰命名法:

5.隐式转换和显示转换的区别

6.基本类型运算规则

7.&和&&的区别:

8.三元运算符

9.switch表达式都可以使用什么数据类型?

10.怎么结束多层循环?

11.分支结构有几种?语法结构怎么写?有什么区别?


java语言基础

1.分别简述什么是JDK、JRE、JVM,以及他们之间的关系。

JDK:Java Development Kit是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE、Java开发工具集和Java基础类库。
JRE:Java Runtime Environment是运行JAVA的运行时环境,包含JVM和Java核心类库。
JVM:Java Virtual Machine,Java虚拟机的缩写,是整个java实现跨平台的最核心的部分,能够运行以Java语言写的软件程序。

2.java实现跨平台的原理是什么?

原理:只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。
因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性。也称为Java具有良好的可移植性。


3.Java代码是如何运行的?

编译:代码编写完成后,通过编译将java源文件即.java文件转换为字节码文件 即 .class文件。
运行:然后先启动java虚拟机,不同的操作系统有不同的JVM,因此java跨平台。然后在指定的操作系统上,加载字节码文件。字节码文件都一致,但每个JVM不同,每个JVM都是根据服务器硬件而专门编写的。这样JVM虚拟机会把字节码文件再次编译成对应硬件服务器上的指令集。从而实现java代码的跨平台运行。再通过JVM加载.class字节码文件。
 

4.java中标识符的命名规则是什么?

①标识符可以由26个大小写英文字母、数字0-9,下划线_,美元符号$符组成,不能包含@ % 空格等其他特殊字符。
②标识符不能以数字开头,可以以字母,下划线开头
③标识符要见名知意
④标识符严格区分大小写
⑤标识符命名规则遵守驼峰命名规则,变量名首字母小写,多个单词从第二个单词开始首字母大写,通常方法名和变量名命名规则一样,类名首字母要大写,包名全部采用小写
 

5.char类型能否存储汉字,为什么?能不能直接存储数字,使用时是不是直接使用数字,为什么?


答,能存储汉字。因为java采用Unicode编码,两个字节表示一个字符,汉字占一个字符。而char在java中占两个字节,所以可以存储中文
能直接存储数字,无论是数字,字母还是汉字或者其他的内容都可以存储。
使用时不是直接使用数字,赋值数字,运行时会自动转换为对应ASCll的字符。0-127是对应的ASCll表中值

char类型的标志:单引号’ ',单引号中有且只能有一个字符,至少有一个字符,为空编译报错。不能为空。


6.注释:

             ①单行注释://

             ②多行注释:/* */

             ③文档注释:/**  */

7.定义包:  

                 ①定义一个包 package--java关键字,专门用来定义包
                 ② com.huacit.day01--包名,全小写,一般是公司域名倒写+正常包名

8.定义类:

              class --java关键字,用来定义类
                HelloWorld--类名,首字母大写

9.驼峰命名法:

变量命名规则,首字母小写,多个单词从第二个单词开始首字母大写

10.隐式转换和显示转换的区别

小类型转换大类型时会发生隐式转换,不需要我们操作编译器自动转换
大类型转换小类型时会发生显示转换,需要我们在转换的变量或字面值前加小括号,小括号中放入要转换成的数据类型。需要注意的是,如果小数转成整数,会直接将小数点后的所有位数全舍弃,不会四舍五入。

11.基本类型运算规则

1.不同数据类型进行运算,结果类型与最大数据类型一致

2.byte,short,char三种比int小的整数,在计算时会自动转成int

3.整数运算溢出

4.浮点型运算不精确(API阶段解决)

5.浮点数的特殊值

System.out.println(3.3/0);//无穷大 System.out.println(0/0.0);//NaN

12.&和&&的区别:

&既是位运算符,也是逻辑运算符。当&两边是数字时,会将数字转化成二进制数进行运算,当&的两边时boolean类型时,会进行逻辑判断,左右两边都true时才返回true。

&&是逻辑运算符,也叫短路与。
二者的区别:在判断时,如果左边表达式结果为false时,短路与&&会直接返回false,不再对右边的表达式进行判断,而&会将左右两边的表达式都判断完才返回结果。推荐使用短路与&&,执行效率更高。

13.三元运算符

三元运算符,也叫三目表达式

语法:boolean表达式?1:2;

执行流程:当boolean表达式值为true时,执行1,否则执行2 

14.switch表达式都可以使用什么数据类型?

byte short char int enum(枚举类型jdk5.0新增),String(jdk7.0新增)

15.怎么结束多层循环?

使用 ①标记break;循环后的代码仍然执行
②return ;return 是结束整个程序,return语句后面直接跟分号 ,不能跟其他语句。使用return语句结束循环,循环后的所有代码不再执行

结束循环可以使用:
continue:结束本次循环,继续下一次循环。
break :结束当前循环,如果是多层循环,只是跳出本层循环。
return; 结束整个程序

16.分支结构有几种?语法结构怎么写?有什么区别?

4种,分别为单分支,双分支,多分支, switch-case。

单分支:if(boolean表达式){语句;} 

双分支:if(boolean表达式){满足条件执行;}else{不满足条件执行;}

多分支:if(boolean 表达式1){语句1;}else if(boolean 表达式2){语句2;}else if()……

switch (变量){
case 常量1:[语句1];[break];

case 常量2:[语句2];[break];
case 常量3:[语句2];[break];
[default:语句;]
}

17.循环结构有几种?语法结构怎么写?有什么区别?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值