java面试题(重写与重载、throw与throws、接口与抽象类、jre与jdk)

java面试题(重写与重载、throw与throws、接口与抽象类、jre与jdk),第1张

java面试题(重写与重载、throw与throws、接口与抽象类、jre与jdk)

一、重写与重载的区别:

1、重载:
java中允许同一个类文件出现多个方法名相同但是参数列表不同同名方法,这种现象称为重载。
要求两个方法名称必须相同,但是参数列表不能相同(个数不同,参数类型不同,参数类型出现顺序)

目的:让方法在接收不同参数实现不同功能

2、重写:
发生在继承过程中,子类对父类方法实现细节进行重新定义
1)重写方法时,子类不能降低方法访问权限,可以扩大访问权限
2)由private或则final修饰方法都不能被重写
3)重写方法时,抛出异常可以是父类方法抛出异常全集,子集,空集
4)重写方法返回值,可以缩小返回类型对象,不能扩大

二、throw与throws
throws:
1)声明位置:方法名之后
public void test1() throws NullPointerException{}
2)作用:通知开发人员当前方法在运行时,有可能抛出的异常
3)携带数据 :throws后面可以携带多个异常类型
4)调用:当一个方法被throws修饰时,调用方法时必须考虑异常捕捉问题

throw:
1)声明位置:方法执行体
public void test1(){
throw new RuntimeExeption();
}
2)作用:throw是一个命令,执行时抛出一个指定异常
3)调用时可以不考虑异常捕捉问题

三、接口与抽象类区别
接口:
1)是一种特殊类文件
2)作用:定义规则、降低耦合度
3)使用规则:
1)接口中属性,默认都是静态常量属性
2)接口中方法都是抽象,如果需要定义具体方法是实现,此时方法需要使用default修饰
3)接口中方法访问权限不能是private
4) 接口与接口之间可以实现多继承,但是接口之间不能相互实现
5)接口中不存在构造方法,不能被实例化

抽象类:
1)抽象类由abstract修饰
2)抽象类作用降低接口实现类与接口之间实现难度
3)使用规则:
抽象类可以声明抽象方法,也可以生成具体方法
抽象类声明抽象方法必须由子类进行重写
抽象类实现接口时,不需要对接口方法进行重写
抽象类有构造方法,但是不能使用

四、JRE和JDK区别
JRE:是java程序的运行时环境,包括jvm和运行时所需要的核心类库;
JDK:是java程序开发程序包,包括JRE和开发人员使用的工具;
我们想要运行一个已有的java程序,只需要安装JRE即可
我们想要开发一个全新的java程序,那必须安装JDK

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5682690.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存