目录
Java语言采用何种编码方案?有何特点?
- 采用Unicode编码标准,通过用双字节来表示一个字符,从而在更大范围内将数字代码映射到多种语言的字符集。为每一个字符定义了唯一的数值。
- 因此无论是什么平台,什么语言,什么程序都可以放心使用
什么是Java注释
- 用于解释JAVA程序的文字
- 分类
- 单行注释://
- 多行注释:/**/
- 文档注释:/** */
- 作用:增强代码的可读性,通过注释能够更快的理解程序信息,注释与注释之间不能够嵌套
访问修饰符 public,private,protected,以及不写(默认)时的区别
- public:对所有类公开
- private:只对当前类公开
- protected:对于同包内的类和子类公开
- 不写:对于同包内公开
&和&&的区别
- & 和 && 都可以作为逻辑与
- &还可以作为按位与
- 如果&&左边的表达式的值是 false,右边的表达式会被直接短路掉,不会进行运算。
final 有什么用?
- 被final修饰的类不可以被继承
- 被final修饰的方法不可以被重写
- 被final修饰的变量就变成常量
- 被final修饰的引用类型,则在其初始化之后便不能指向其他对象了,但是该引用所指向的对象的内容是可以发生变化的。
final finally finalize区别
- final:是一个修饰关键字,修饰类,方法和变量
- finally:作用在try-catch代码块中,在处理异常的时候,通常我们将一定要执行的代码方法finally代码块中,表示不管是否出现异常,该代码块都会执行,一般用来存放一些关闭资源的代码。
- finalize:是一个方法,属于Object类的一个方法,该方法一般由垃圾回收器来调
用,当我们调用System.gc() 方法的时候,由垃圾回收器调用finalize(),回收垃圾,一个对象是否可回收的最后判断
this关键字的用法
- this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。
- 用法:
- 普通的直接引用,相当于指向当前对象本身
- 利用this区分形参与成员名字重名
- 引用本类的构造函数
super关键字的用法
- 指向自己超类(父类)的指针,超类指的是离自己最近的类。
- 用法:
- 可以引用父类的成员或者方法
- 可以区分与子类名字相同的成员变量和方法
this与super的区别
- 调用成员变量
- this可以调用本类的成员变量,也可以调用父类的成员变量
- super只可以调用父类的成员变量
- 调用构造方法
- this调用的本类的构造方法
- super调用的父类的构造方法
- 调用成员方法
- this可以调用本类的成员方法也可以调用父类的成员方法
- super只调用父类的成员方法
static存在的主要意义
- 创建独立于具体对象的域变量或者方法。以致于即使没有创建对象,也能使用属性和调用方法!
- 用来形成静态代码块以优化程序性能
static的独特之处
- 被static修饰的变量或者方法是独立于该类的任何对象,也就是说,这些变量和方法不属于任何一个实例对象,而是被类的实例对象所共享。
- 在该类被第一次加载的时候,就会去加载被static修饰的部分,而且只在类第一次使用时加载并进行初始化,注意这是第一次用就要初始化,后面根据需要是可以再次赋值的。
- static变量值在类加载的时候分配空间,以后创建类对象的时候不会重新分配。赋值的话,是可以任意赋值的!
- 被static修饰的变量或者方法是优先于对象存在的,也就是说当一个类加载完毕之后,即便没有创建对象,也可以去访问。
static应用场景
- 某个成员变量是被所有对象所共享的,那么这个成员变量就应该定义为静态变量。
- 静态代码块
- 修饰类【只能修饰内部类也就是静态内部类】
- 静态导包
static注意事项
1、静态只能访问静态。
2、非静态既可以访问非静态的,也可以访问静态的。
break ,continue ,return 的区别及作用
- break 跳出总上一层循环,不再执行循环(结束当前的循环体)
- continue 跳出本次循环,继续执行下次循环(结束正在执行的循环 进入下一个循环条件)
- return 程序返回,不再执行下面的代码(结束当前的方法 直接返回)
在 Java 中,如何跳出当前的多重嵌套循环
- 可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环。
ok:
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println("i=" + i + ",j=" + j);
if (j == 5) {
break ok;
}
}
总结
转载:JAVA基础面试题
总的来说还是回忆起之前所学,有些细节的点还是需要翻一翻的