JAVA面试基础知识点总结Word文档格式.docx

上传人:b****5 文档编号:17479216 上传时间:2022-12-06 格式:DOCX 页数:9 大小:28.16KB
下载 相关 举报
JAVA面试基础知识点总结Word文档格式.docx_第1页
第1页 / 共9页
JAVA面试基础知识点总结Word文档格式.docx_第2页
第2页 / 共9页
JAVA面试基础知识点总结Word文档格式.docx_第3页
第3页 / 共9页
JAVA面试基础知识点总结Word文档格式.docx_第4页
第4页 / 共9页
JAVA面试基础知识点总结Word文档格式.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

JAVA面试基础知识点总结Word文档格式.docx

《JAVA面试基础知识点总结Word文档格式.docx》由会员分享,可在线阅读,更多相关《JAVA面试基础知识点总结Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。

JAVA面试基础知识点总结Word文档格式.docx

覆盖方法的规则有哪些?

子类覆盖方法和父类被覆盖方法的方法返回类型,方法名称,参

数列表必须相同

子类覆盖方法的访问权限必须大于等于父类的方法的访问权限

方法覆盖只能存在于子类和父类之间

子类覆盖方法不能比父类被覆盖方法抛出更多异常

参数列表是否相同从哪几方面看?

从三方面看:

参数个数,类型和顺序,需要注意的是参数的名字不相同是无所谓的

方法名相同

方法的参数类型,个数,顺序至少有一项不同

方法的返回类型和修饰符均不受限制

可变长参数的声明格式是什么?

实际上是什么类型的?

类型…变量,实际上是一个一维数组

this和super是作什么用处的?

this:

本身代表当前的对象引用,可以用this.成员名称调用当前对象的属性和方法,如果属性和局部变量重名,可以用this.属性名

和局部变量区分开。

也可以用this()语法调用本类重载构造器。

super:

本事是一个特殊关键字,可以用super.成员名称调用从父类继承的属性和方法,也可以用super()语法调用父类构造器。

super代表子类中的父类对象引用吗?

不,这个错误的说法,super不代表任何对象引用,仅仅是一个关键字

什么时候子类构造器会自动调用父类无参构造器?

当子类构造器中没有任何显式构造器调用的时候,即既没有this

()调用也没有super()调用的时候

一个父类类型的引用变量可以引用一个子类的实例吗?

可以,这个引用变量是一个多态对象

多态对象有什么特点?

多态对象只能使用父类的成员,但如果多态对象使用了被子类覆盖的方法,则会动态绑定使用子类的成员,称为虚拟方法调用

引用类型之间的类型转换需要遵循哪些规则?

自动转换:

从子类到父类的类型可以自动转换

强制转换:

从父类到子类的类型要强制转换

无继承关系的类型转换是非法的

instanceof操作符是作什么用处的?

可以判断一个对象的类型是否是某一个类的类型或子类,也可以

判断这个对象的类型是否是一个接口的实现类

toString方法什么时候会自动被调用?

在打印语句中传入引用类型的对象或者对象和字符串作连接时默认的equals方法实现的是比较内容还是比较引用地址?

在Object中是比较引用地址。

覆盖equals方法和hashCode方法有什么规则?

必须保证当两个对象equals比较为true的时候,返回的

hashCode相同,当比较为false的时候,返回的hashCode不同java中有几个包装类?

有8个包装类,正好对应8种基本数据类型。

分别是:

BooleanByteShortIntegerLongCharacterFloat

Double装箱和拆箱分别是什么意思?

装箱指的是把基本类型包装成包装类的引用类型

拆箱指的是把包装类形式的引用类型转换为基本类型

例如:

Integerobjlnt=newInteger(10);

〃装箱

inti=objInt.intValue();

//拆箱

JDK1.4和1.5的装箱和拆箱有什么区别

自动拆装箱,例如:

IntegerintObj=10;

//自动装箱

inti=intObj+5;

//自动拆箱

final修饰符如何使用,使用了final修饰符有什么特点?

final修饰符可以修饰类,方法,变量

final类为最终类,不能被子类继承

final方法为最终方法,不能被子类覆盖

final变量为常量,只能赋一次值

abstract修饰符如何使用,使用了abstract修饰符有什么特点?

abstract修饰符可以修饰类和方法

abstract类为抽象类,是不能创建对象的

abstract方法为抽象方法,只有方法的声明,没有具体的实现

需要注意的是:

有抽象方法的类一定是抽象类

抽象类不一定有抽象方法

抽象类也有构造器,但不能创建对象实例

abstract不能和哪些修饰符配合使用?

不能禾口private,static,final—起使用

可以在非抽象方法中调用抽象方法吗?

可以,模板方法设计模式就是典型的这种调用

泛型程序设计

泛型的特点是什么?

主要特点是类型参数化,后期绑定数据类型

泛型支持基本类型吗?

不支持,只支持引用类型

如果没有传入类型参数,默认是什么类型?

默认是Object类型

泛型方法有什么特点?

将泛型参数声明在方法中,调用方法的时候绑定泛型

泛型类声明泛型参数的时候,表示什么意思?

表示绑定的类型必须是A类型后者是A类型的子类或实现类接口和内部类

声明一个接口的关键字是什么?

interface关键字

接口中的成员有什么特点?

数据域必须是(publicstaticfinal修饰)公有静态常量

方法必须是(publicabstract修饰)公有抽象

没有构造方法

接口能创建对象实例吗?

不能,接口没有构造器,不能创建对象

接口和类的关系?

接口和类之间是实现关系,一个类用implements语句实现了某接口,这个类被称为接口的实现类,一个类可以实现多个接口,一个类实现了某接口,必须覆盖这个接口中的所以方法,否则这个类必须

是个抽象类

接口和接口的关系?

接口和接口之间是继承关系,一个接口用extends继承另外一

个接口,称为这个接口的子接口

一个接口可以继承多个父接口

内部类如何定义?

一个类声明在另一个类的里面,这个类就被称为内部类,而外面的类被称为外部类

内部类可以分成几种?

实例内部类:

声明在方法外边没有static修饰符

静态内部类:

声明在方法外边有static修饰符

局部内部类:

声明在方法里边

如何创建实例内部类的对象实例?

需要用外部类的对象来创建

classA{

classB{

}

如果像创建B类的实例,则必须用以下语句:

Aa=newA();

A.Bb=a.newB();

如何在实例内部类中访问外部类的成员?

在实例内部类中可以直接使用外部类的成员,不需要创建外部类

的对象实例,但是如果在内部类中的成员名称屏蔽隐藏了外部类的成员(即外部类和内部类的成员名相同),则需要用外部类名.this.成员名访问外部类成员

异常处理

异常的对象的根类是哪个类?

是Throwable类

Throwable类有哪两个分支?

分成Error类和Excepion类两个分支

Error类表示严重错误

Exception类表示可以在程序中处理的错误

Exception类有哪两个分支?

分成运行时异常和非运行时异常(已检查异常)

运行时异常编译不检查,在运行时才会发生异常

已检查异常编译时就会作检查,不处理异常则通不过编译

如果在try块中发生异常,那么程序将会跳转到哪?

会跳转到catch语句块

catch语句可以用父类类型捕获子类异常吗?

因为有多态特点,是可以的

处理异常代码finally语句会在什么时候执行?

finally代码在任何时候都会执行,不管有没有发生异常。

如何声明已检查异常,由谁来处理这个异常?

用throws语句来声明一个已检查异常,由方法的调用者来处理这个异常

如何抛出一个异常?

用throw语句抛出

如何创建一个自定义的异常类?

创建一个类,只要让它继承任何一个现有的异常类就可以了

覆盖方法对于异常有什么要求?

覆盖方法不能比父类方法抛出更多异常

反射,代理,标注

获得一个类型的Class对象有哪几种途径?

方法1:

对象.getClass()方法2:

类型名.class方法3:

Class.forName()反射相关的类型都有哪些?

Class代表一个运行时类

Field代表一个类的属性

Method代表一个类的方法

Constructor代笔一个类的构造器

如何声明一个自定义标注?

[]@interface{返回值方法名称();

返回值方法名称();

public@interfaceMyComment{intid();

Stringinfo();

java有

几个内置标注?

有3个

@Override——用于修饰此方法覆盖了父类的方法,而非重载。

@Deprecated用于修饰已经过时的方法。

java常用类

字符串String是可变类还是不可变类?

是不可变类,一经创建就不能修改其内容了

字符串的常用方法有哪些?

charAt方法:

可以返回指定位置的字符

substring方法:

可以截取子字符串

length方法:

返回字符串长度

indexOf方法:

查找子串的位置

lastIndexOf方法:

反向搜索字串的位置

replaceAll方法:

替换字符串

split方法:

分解字符串

toLowerCase,toUpperCase方法:

字符串大小写转换

StringBuffer类和String类有什么区别?

StringBuffer是可变类,String是不可变类

StringBuffer类和StringBuilder类有什么区别?

StringBuffer类是线程安全的,StringBuilder类是线程不安全

Math类主要提供了哪些方法?

Math类提供了大量的和数学运算相关的静态方法

Set集合和List集合共同的父接口是什么?

是Collection集合

Set集合和List集合有什么区别?

Set:

Collection的子接口,不记录元素的保存顺序,且不允许有

重复元素

List:

Collection的子接口,记录元素的保存顺序,且允许有重

复元素

ArrayList和LinkedList有什么不同?

ArrayList的内部实现是基于内部数组Object[],所以从概念上讲它更像数组

LinkedList的内部实现是基于一组连接的记录,所以它更象一个

链表

结构,所以它们在性能上有很大的差别。

ArrayList随机访问比较块,但插入和删除元素比较慢

LinkedList但插入和删除元素比较快,但随机访问比较慢

HashTable和HashMap有什么不同?

HashTable是线程安全的,HashMap是线程不安全的

Vector和ArrayList有什么不同?

Vector是线程安全的ArrayList是线程不安全的

10流

流分成哪两类?

按照单位划分分成字节流和字符流。

按输入输出分成输入流和输出流

和文件流相关的有那几个类?

FilelnputStream文件输入字节流

FileOutputStream文件输出字节流

FileReader文件输入字符流

FileWriter文件输出字符流

文件流操作应该用字节流还是字符流?

如果是纯文本文件应该用字符流

如果是二进制文件应该用字节流

文件操作用哪个类?

用java.io.File类

GUI图形编程

线程

创建一个线程类的两种方式?

继承Thread类

实现Runnable接口

线程体应该放在哪个方法里面?

run方法

启动新的线程用什么方法?

用start方法

一个线程对象能够用start多次启动吗?

不可以,一个线程方法只能start一次线程有哪几种主要状态?

有四种,分别是:

新生状态,可运行状态,阻塞状态,死亡状态

线程的同步需要用什么方法?

旧的方法是用synchronized关键字

新的方法是用ReentrantLock类的lock和uniock方法

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1