JAVA初级开发工程师面试常问题目

JAVA初级开发工程师面试常问题目(持续更新)

1.说说你对面向对象的理解
面向对象是一种“万物皆对象”的编程思想,在生活中任何事物都可以归为一类,而每一个个体都是一类事物的实例。

2.抽象类和抽象接口的区别
抽象类:
抽象类可以包含非抽象方法,属性;但是包含抽象方法的只能是抽象类
抽象类中的抽象方法必须由子类实现才能使用,如果子类没有实现全部的抽象方法,则该子类依旧是抽象类
子类只能继承一个抽象类(extends)
接口:
在JDK8之前,接口的方法只能由public修饰,必须是抽象的,JDK8之后,增加了default和static
接口中只有常量,因为接口中的变量只能用public static final修饰
接口中的抽象方法必须由子类实现才能使用,如果子类没有实现全部的抽象方法,则该子类为抽象类
子类可以实现多个接口(implement)

3.说说第三范式
第一范式:表中每个分量必须是不可分割的数据项
第二范式:在第一范式的基础上,表中的每个非主属性必须完全函数依赖于主属性
第三范式:在第二范式的基础上,表中的每个非主属性之间不能有传递依赖

4.Java中的方法覆盖(Overriding)和方法重载(Overload)是什么意思?
方法重写:是指子类继承父类的方法,并重新编写方法里面的内容。
方法重载:是指在一个类中方法的名称相同但是参数列表不同的情况。
方法重写原则:

  • 方法名和参数列表必须相同
  • 两小一大原则:方法返回值类型要小于等于父类方法,方法抛出异常类型要小于等于父类方法,方法访问权限要大于等于父类方法
  • 被final,static,private修饰的方法不能被重写

方法重载原则:

  • 方法名必须相同
  • 参数列表不同(个数不同,类型不同,数据类型的顺序不同)
    (int a) ——> (int a , int b)
    (int a) ——> (double a)
    (int a , double b) ——> (double a , int b)
  • 返回类型可以相同也可以不同,但仅仅返回类型不同是不能构成方法重载的
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值