javaee基础知识点整理01

java知识点整理

1、JDK,JRE,JVM分别是什么?

JDK:(Java Development Kit) Java开发工具包。
JRE:(Java Runtime Environment)运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。两部分( Java Runtime Environment, Java Plug-in)。
JVM:(Java Virtual Machine)java虚拟机 JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

2、Java语言是跨平台的吗?JVM是跨平台的吗?

不同平台需要安装对应版本的JVM才能运行Java文件。
Java的运行需要有当前平台相应的JVM支持。
所以说java语言是跨平台的而JVM不是跨平台的。

3、 什么是注释?注释分为几种?注释有什么作用?

注释就是对代码的解释说明的文字;
分为三种:
1、单行注释://解释说明文字
2、多行注释:/*解释说明性文字 */
3、文档注释:
作用
就是对程序进行说明解释,方便给人看还可以对程序进行排错。

4、什么是标识符?由哪些部分组成?常见的命名规则有哪些?

用于表识类名、变量名、方法名、类型名、数组名、文件名等有效字符序列称为标识符。
有字母、数字、下划线以及“$”符号组成。
规则:

    (1)标识符必须由字母、下划线或‘$’开头,后面可跟数字等。
    (2)标识符的大小写是区别对待的。
     (3)在自定义标识符的时候应该使其能反应她所表示的变量、对象等的意义。

4、计算出十进制46对应的二进制,八进制,十六进制的值。

二进制:

46
23…0
11…1
5…1
2…1
1…0
0…1
结果:0b101110

八进制:

46
5…6
0…5
计算结果:056

十六进制:

46->二进制符:0010 1110
2 14->E
结果:0x2E

5、什么是变量?变量的定义格式?要使用变量需要注意什么?

变量就是一块储存空间

格式:

数据类型 变量名 =值;

注意:

在使用变量时必须指定该变量只能存放哪种数据类型。

6、Java中的数据类型分几类?基本数据类型有哪些?

java数据类型
基本数据类型
数字类型
整型
byte 8bit
short 2byte
int 4byte
long
浮点型
float
double
字符类型
char
布尔型
boolean
引用数据类型
String
两类数据类型:

基本数据类型 和引用数据类型
基本数据类型有:八大类
byte、 int 、short、float、Double、 long、 boolean 、char

7、数据类型转换

隐式转换

低级向高级转换—自动转换
byte i = 0;
int a =i;
long b = i;
float c =b;
double d =c;
short j =i;

强制转换:

高级到低级转换—强制转换
int i=99;
byte b=(byte)i;
char c=(char)i;
float f=i;
double d = f;
f =(float) d;

包装类过度类型转换

JAVA 共有6个包装类:Boolean、Integer、Long、Float、Double、Character

面试题:

第一题:
	byte b1=3,b2=4,b;
	b=b1+b2;
	b=3+4;
哪句是编译失败的呢?为什么呢?
答:b=b1+b2编译失败,应为左边b1+b2的带的结果默认为int类型,而右边默认为btye类型,
第二题:
	byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?
答:有问题,byte的取值范围是-128到127,130超出了范围会报错
解决方案:采用short类型接收130,结果是130

8、常见的算术运算符有哪些?

运算符意义
+
-
*
/
%求余、求模
//整除
**幂次方
+运算符的作用有哪些?

(1)做数字的加法运算。
(2)做字符串的拼接作用。

除法和取余的区别?

除法会去掉多余的余数 取余只会取余数

++和–的使用规则?

变量在左边时会先运算再自加或自减
变量在右边时会先自加或自减在进行运算

9、常见的赋值运算符有哪些?

运算符意义
=赋值
+=加等
-=减等
*=乘等
/=除等
%=模等
+=运算的作用是什么?

再当前变量上再增加一个参数后重新赋值给当前的变量

10、short s = 1; s = s + 1;有没有问题?如果有怎么解决?

答:有问题,
右边的变量默认为int类型,而int 类型需要进行强制转换才能变成short类型,s=(short)s+1;

short s = 1; s += 1;有没有问题?如果有怎么解决?

答:没有问题

11、常见的关系运算符有哪些?

运算符意义
>大于
<小于
==等于
>=大于等于
<=小于等于
!=不等于
关系运算符的结果有什么特点?

都是boolean值

12、常见的逻辑运算符有哪些?

运算符意义
&逻辑与
逻辑或
!逻辑非
&&短路与
^逻辑异或(只要两边操作数不同,结果就是true)
&和&&的区别是什么?

答:区别在于
&在判断第一个条件不满足时还会继续判断下一个条件从而判断两次
&&在判断第一个条件不满足时不会判断下一个条件,从而实现阻断作用,提高了运行效率

|和||的区别是什么?

答:区别在于
|在判断第一个条件满足时还会继续判断下一个条件从而判断两次
||在判断第一个条件满足时不会判断下一个条件,从而实现阻断作用,提高了运行效率

13、位运算符^的特点是什么?

一个数据对另一个数据位异或两次,该数本身不变。

14、如何实现对两个整数变量的值进行互换。

发方一:

方法一:使用第三方变量(开发中使用)

        int a =10;

        int b = 20;

        int c = a;

        a=b;

        b=c;
方法二:用位异或实现
        a = a ^ b;

        b = a ^ b;   // a ^ b ^ b = a

        a = a ^ b;  //  a ^ b ^ a = b

面试题:

请自己实现两个整数变量的交换

方法一:使用第三方变量(开发中使用)

        int a =10;

        int b = 20;

        int c = a;

        a=b;

        b=c;

方法二:用位异或实现

        a = a ^ b;

        b = a ^ b;   // a ^ b ^ b = a

        a = a ^ b;  //  a ^ b ^ a = b

15、三元运算符的格式是什么?

格式:[条件语句]?[表达式1]:[表达式2]

执行流程是什么?

先执行条件语句,如果为true或1则选择表达式1执行,反之选择表达式2

16、使用三元运算符完成如下练习

int a=1,b=2,c=4;

比较两个数是否相等

a==b?“相等”:“不相等”

获取两个数中最大值

a>b?a:b

获取三个数中最大值

a>b?(a>c?a:c):(b>c?b:c)

17、if语句的格式有几种?注意事项是什么?分别在什么时候使用?

答:有三种,分别是
if(){}、
if(){}else{}、
if(){}else if(){}else if(){}…else{}

第一种:if(){}

当符合某种条件时需要额外的执行步骤时,使用if(){}而不需要用else{},如jdbc中关闭连接时:
if(con !=null){//即当con对象不为空时,需要执行 con.close();
con.close();
}

第二种:if(){}else{}

int i=9;
if(i<9){
System.out.println(“i小于9”);

}else{
System.out.println(“i不小于9”);
}
这种情况可以使用三目运算符:
String s=i<9 ? “i小于9” : “i不小于9”;
System.out.println(s);

第三种:if(){}else if(){}else{}

int i=9;
String s=null;
if(i==1){
s=“i等于1”;

}else if(i==2){
s=“i等于2”;

}else if(i==3){
s=“i等于3”;

}else{
s=“i不等于1、2、3,那究竟等于几呢?”;

}
System.out.println(s);
这种情况可以用
switch(i){
case 1:

s=“i等于1”;
break;

case 2:

s=“i等于2”;
break;
case 3:

s=“i等于3”;
break;
default :

s=“i不等于1、2、3,那究竟等于几呢?”;
break;//这个break语句可以省略

}

18、看程序写结果:请自己独立分析,先不要编译运行。

第一题
int x = 1,y = 1;

if(x++==2 & ++y==2)
{
	x =7;
}
System.out.println("x="+x+",y="+y);  
第二题
int x = 1,y = 1;

if(x++==2 && ++y==2)
{
	x =7;
}
System.out.println("x="+x+",y="+y);
第三题
int x = 1,y = 1;

if(x++==1 | ++y==1)
{
	x =7;
}
System.out.println("x="+x+",y="+y);
第四题
int x = 1,y = 1;

if(x++==1 || ++y==1)
{
	x =7;
}
System.out.println("x="+x+",y="+y);
第五题
boolean b = true;

if(b==false) 
	System.out.println("a");
else if(b)
	System.out.println("b");
else if(!b)
	System.out.println("c");
else
	System.out.println("d");
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值