目录
Java基础考核点1、JDK、JRE、JVM三者之间的关系?
2、&和&&的区别
3、对于整数i,i++和++i有什么区别?
4、简述Java语言的数据类型?对基本数据类型,分别占几个字节?
5、整数据的默认类型为?浮点数默认类型?
6、String与StringBuffer区别?
7、String s=new String(“xyz”);创建了几个 String 对象?
8、什么是字符串常量池?
9、StringBuffer 和 StringBuilder 区别?
10、==和 equals 的区别?
11、final关键字作用
12、String能被继承吗?
13、String 类有那些常用方法?
14、Java程序执行流程
15、什么是递归?用递归求:1,1,2,3,5....数列的第30个数?
16,结束循环的常用方式有哪些?
17、switch语句判断表达式支持的数据类型有哪些?
18、用冒泡法实现对数组排序
Java基础考核点
1、JDK、JRE、JVM三者之间的关系?
JDK:Java Development Kit Java开发者工具包
JRE:Java Runtime Envirment Java运行环境
JVM:Java Virtual Machine Java 虚拟机
2、&和&&的区别
2、&和&&的区别
&和&&都可以作为逻辑与操作,当两边都为true时,才返回true。此外&&可以作为短路与,即如果第一个表达式为false则不在判断第二个表达式。此外&还可以作为为运算符,表示按位与操作。
3、对于整数i,i++和++i有什么区别?
I++表示先使用,再对I进行+1操作;++i表示先对i进行+1操作,随后进行使用。
4、简述Java语言的数据类型?对基本数据类型,分别占几个字节?
Java语言的数据类型分成2种:基本数据类型,一种引用数据类型
基本的数据类型有8种分别为:
byte(1B),short(2B),int(4B) ,long(8B),float(4B),double(8B),char(2),boolean(1)
引用类型:字符串(String),数组(Array),类(Class)等
5、整数据的默认类型为?浮点数默认类型?
5、整数据的默认类型为?浮点数默认类型?
整数默认类型为int,浮点数默认类型为double
6、String与StringBuffer区别?
String创建一个不可变的字符串对象
StringBuffer创建的是一个可变的字符串对象
7、String s=new String(“xyz”);创建了几个 String 对象?
7、String s=new String(“xyz”);创建了几个 String 对象?
创建了一个对象
8、什么是字符串常量池?
字符串常量池位于堆内存中,专门用来存储字符串常量,可以提高内存的使用率,避免开辟多块空间存储相同的字符串。
在创建字符串时JVM会首先检查字符串常量池,如果该字符串已经存在池中,则返回它的引用。如果不存在,则实例化一个字符串放到池中,并返回其引用。
9、StringBuffer 和 StringBuilder 区别?
StringBuffer与StringBuilder都可以创建可变的字符串对象;
StringBuffer是线程安全的,StringBuider是线程非安全的,两者的API是一样的;
9、StringBuffer 和 StringBuilder 区别?
StringBuffer与StringBuilder都可以创建可变的字符串对象; StringBuffer是线程安全的,StringBuider是线程非安全的,两者的API是一样的;
10、==和 equals 的区别?
equals 和== 最大的区别是一个是方法一个是运算符。
==:如果比较的对象是基本数据类型,比较的是数值是否相等;如果比较的是引用类型,则比较的是对象的地址值是否相等。
equals():默认比较的是两个对象的地址;(在没有重写的前提下)
注意:equals方法不能用于基本数据类型的变量,如果没有对equals方法重写,则比较的是变量所指向的对象的地址。
public boolean equals(Object obj) {
return (this == obj);
}
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = value.length;
if (n == anotherString.value.length) {
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n-- != 0) {
if (v1[i] != v2[i])
return false;
i++;
}
return true;
}
}
return false;
}
11、final关键字作用
final关键有三个功能
修饰变量,定义的是常量
修饰方法,方法不能被重写
修饰类,类不能被继承
12、String能被继承吗?
String类定义:public final class String{}
String是一个final 修饰的类,所以不能被继承 ;
13、String 类有那些常用方法?
length(): 返回字符串长度
charAt(): 返回指定索引处的字符
substring(): 截取字符串
trim(): 去字符串两端空白
split(): 分割字符串,返回一个分割后的字符串数组
replace(): 字符串替换
indexOf(): 返回指定字符的索引
14、Java程序执行流程
1.源码编译后得到字节码文件(*.class)
2.类加载器加载字节码文件、字节码校验器对字节码进行校验
3.字节码解释器将字节码翻译为目标机器码交系统运行
类加载器?三种类型的类加载器:引导类加载器,扩展类加载器,系统类加载器,自定义类加载器
15、什么是递归?用递归求:1,1,2,3,5....数列的第30个数?
final关键有三个功能 修饰变量,定义的是常量 修饰方法,方法不能被重写 修饰类,类不能被继承
12、String能被继承吗?
String类定义:public final class String{}
String是一个final 修饰的类,所以不能被继承 ;
13、String 类有那些常用方法?
length(): 返回字符串长度
charAt(): 返回指定索引处的字符
substring(): 截取字符串
trim(): 去字符串两端空白
split(): 分割字符串,返回一个分割后的字符串数组
replace(): 字符串替换
indexOf(): 返回指定字符的索引
14、Java程序执行流程
1.源码编译后得到字节码文件(*.class)
2.类加载器加载字节码文件、字节码校验器对字节码进行校验
3.字节码解释器将字节码翻译为目标机器码交系统运行
类加载器?三种类型的类加载器:引导类加载器,扩展类加载器,系统类加载器,自定义类加载器
15、什么是递归?用递归求:1,1,2,3,5....数列的第30个数?
length(): 返回字符串长度 charAt(): 返回指定索引处的字符 substring(): 截取字符串 trim(): 去字符串两端空白 split(): 分割字符串,返回一个分割后的字符串数组 replace(): 字符串替换 indexOf(): 返回指定字符的索引
14、Java程序执行流程
1.源码编译后得到字节码文件(*.class)
2.类加载器加载字节码文件、字节码校验器对字节码进行校验
3.字节码解释器将字节码翻译为目标机器码交系统运行
类加载器?三种类型的类加载器:引导类加载器,扩展类加载器,系统类加载器,自定义类加载器
15、什么是递归?用递归求:1,1,2,3,5....数列的第30个数?
递归是指程序调用自身的过程
public int di(int a){
if(a==1){
return 1;
}
if(a==2){
return 1;
}
return di(a-1)+di(a-2);
}
16,结束循环的常用方式有哪些?
break终止循环,继续向下运行程序,
continue跳出本轮循环,进入下一轮循环
17、switch语句判断表达式支持的数据类型有哪些?
支持的数据类型有基本数据类型: byte,short,char,int 引用数据类型:Byte,Short,Character,Integer,String,以及枚举类型



