当前位置: 首页 > news >正文

【沉浸式求职学习day40】【java面试题精选2】

最近还是一如既往的忙碌,不过总的来说还是在努力

沉浸式求职学习

  • java面试题精选2
    • 1.重写
    • 2.多态注意事项
    • 3.抽象类
    • 4.接口
    • 5.异常
    • 6.java中抛出异常的几种方式
    • 7.进程
    • 8.形成多线程的几种方式
    • 9.栈和堆
    • 10.int和Integer有什么区别?
    • 11.Integer有什么优点
    • 12.Integer可以用 == 进行比较吗? 为什么
    • 13.final、finally、finalize有什么区别
    • 14.普通类和抽象类有哪些区别?
    • 15.抽象类一定要有抽象方法吗?
    • 16.抽象类能使用 final 修饰吗?
    • 17.抽象类和接口的区别

java面试题精选2

1.重写

1.方法名必须相同
2.参数列表必须相同
3.修饰符:范围可以扩大但是不能缩小: public>protected>default>private
4.重写抛出的异常:范围可以被缩小但是不能被扩大。
【关键】
1.当父类引用指向子类时,当访问属性时,属性的值是父类中的值。如果方法被重写,调用的方法就是子类中被重写的方法,如果方法没有被重写,调用的方法就是父类中的方法。
2.重写的关键词只能是Public

  • 不能重写的:

    • static 属于类不属于实例

    • final 常量

  • private

2.多态注意事项

1.多态是方法的多态,属性没有多态
2.父类和子类有联系,,否则类型转换异常
3.存在条件:继承关系,方法需要重写,父类引用指向子类

3.抽象类

  • 抽象类不能new,不能被实例化,只能靠子类实现,它是一个约束,抽象类里面可以有普通方法,抽象方法【必须】在抽象类中
  • 抽象类存在构造器嘛?存在
  • 抽象类存在的意义是什么? 提高开发效率,可拓展性强

4.接口

普通类:只有具体实现
抽象类:具体实现和规范都有,通过子类去实现
接口:只有规范!自己无法写方法!专业的约束,约束和实现分离:面向接口编程

  • 1.接口就是规范,接口本质是契约,就像法律,不是类,接口中只有方法的定义没有实现,也没有构造方法
  • 2.是对对象的抽象,最能体现的就是接口
  • 3.类可以实现接口 implements 接口
  • 4.实现了接口的类,就需要重写接口中的方法
  • 5.多继承

5.异常

  • 1.处理异常,用try-catch
  • 2.多重catch块后加个exception处理被遗漏的
  • 3.对于不确定代码,可以try-catch
  • 4.尽量加finally去释放占用资源

6.java中抛出异常的几种方式

  • 1.try-catch:如果抛出就捕获
  • 2.throw: 开发者主动抛出异常,即读到throw,就一定会抛出异常:throw new Exception
  • 3.throws:作为方法,用来描述方法可能会抛出的异常,如果方法throws的是RuntimeException,就可以不处理,JVM会处理,但是Exception必须自己处理

7.进程

  • 1.程序是死的,但是进程是执行程序的一次过程,它是一个动态的概念
  • 2.进程里可以有若干个线程,一个进程中至少有一个线程,不然是没有存在的意义的。
  • 3.调度器就是cpu,人为干预不了。

8.形成多线程的几种方式

1.继承Thread类
(1)继承
(2)重写run的线程执行体
(3)主线程中子类对象直接调用start()
(4)但是不建议使用:单继承

2.实现Runnable接口
(1)创建一个Runnable接口实现类
(2)重写run()方法
(3)实例化Runnable接口实现类对象,创建一个Thread类,丢入Runnable接口实现类的对象
(4)推荐使用,避免单继承局限性,灵活方便,而且还能够一个对象被多个线程(代理)使用

9.栈和堆

在这里插入图片描述
如图所示:
栈存的是变量,堆存的是对象:
针对基本类型,它不会在堆中出现,出现在栈中,变量名对应的值就是实际值;
针对引用类型,具体的对象存储在堆中,堆中对象的地址赋值给栈中的变量,然后地址是放在栈中。的。

10.int和Integer有什么区别?

int和Integer区别体现在以下几个方面:

  • 数据类型不同,int是基本数据类型,Integer是包装数据类型
  • 默认值不同:int默认为0,Integer默认是null;
  • 存储方式不同:int存的就是值,Integer存的是对象的引用,当new一个Integer其实就是生成一个指针指向这个对象。
  • 实例化方式不同:Integer是类,必须实例化才能用,Int不需要
  • 变量比较方式不同:int可以用 == 来进行值比较,但是Integer必须要用equals比较两个变量是否相等

11.Integer有什么优点

包装类Integer的优点是解决了基本数据类型无法做到的事情,比如泛型类型参数、序列化、类型转换、高频区间数据缓存(-128~127)等问题。

12.Integer可以用 == 进行比较吗? 为什么

Integer不能使用 == 比较,因为 Integer 本身是对象,而 == 比较的是对象地址,所以不能用 == 比较

13.final、finally、finalize有什么区别

  • final用来修饰类、方法、变量和参数的关键字,被final修饰的对象不允许修改或者替换原始值或者定义
  • finally是java中保证重点代码一定要被执行的一种机制;比如try catch finally
  • finalize是Object类中的一个基本方法,它的设计目的是保证对象在被垃圾收集前完成特定资源回收的,但是它执行不稳定,且有一定的性能问题,所以JDK9被弃用了

14.普通类和抽象类有哪些区别?

  • 普通类不能包含抽象方法,抽象方法能够包含抽象方法
  • 抽象类不能实例化,只能依靠子类去实现,普通类可以直接实例化

15.抽象类一定要有抽象方法吗?

不一定非要抽象方法

16.抽象类能使用 final 修饰吗?

不能,定义抽象类就是让其他类继承的,如果定义为 final 该类就不能被继承,这样彼此就会产生矛盾,所以 final 不能修饰抽象类。

17.抽象类和接口的区别

首先它们都是为了定义对象的公共行为的,但是有不同如下:

  • 定义关键字不同 interface abstarct
  • 子类继承或者实现关键字不同 implements extends
  • 类型扩展不同:抽象类是单继承,接口是多继承
  • 方法访问控制符:抽象类无限制,只是抽象类方法不能用Private修饰;接口有限制,默认是public abstract控制符
  • 属性方法控制符:抽象类无限制,接口有限制,接口默认public static final
  • 方法实现不同:抽象类中的普通方法必须要有实现,抽象方法必须没实现;而接口中普通方法不能实现,但是在JDK8后的static和default中必须要实现
  • 抽象类可有静态代码块,接口不能有

最后,抽象类用于描述一类事物的共性,动物有名字、吃饭的行为,但是具体的叫声需要各个子类自己实现。

接口相当于契约,比如飞行、游泳等行为,可以被不同的类实现。

http://www.dtcms.com/a/192805.html

相关文章:

  • 哈夫曼树完全解析:从原理到应用
  • 如何使用易路iBuilder智能体平台快速安全深入实现AI HR【实用帖】
  • 设置WDA_EXCLUDEFROMCAPTURE 无效的原因
  • doris节点数量规划
  • 无人机屏蔽与滤波技术模块运行方式概述!
  • Kind方式部署k8s单节点集群并创建nginx服务对外访问
  • 代码随想录算法训练营第四十一天
  • vite运行只能访问localhost解决办法
  • [Harmony]封装一个可视化的数据持久化工具
  • 蓝桥杯12届国B 123
  • 数据结构——例题2
  • [数据结构]8. 树-Tree
  • 基于YOLO算法的目标检测系统实现指南
  • Reactor模型详解与C++实现
  • 虚拟Python 环境构建器virtualenv安装(macOS版)
  • 小白上手RPM包制作
  • Obsidian Callouts标注框语法
  • 【python】字典:: a list of dictionaries
  • 在Rocky Linux 9.5上部署MongoDB 8.0.9:从安装到认证的完整指南
  • 项目变更管理
  • 【Android】Android 实现一个依赖注入的注解
  • 互联网医院系统源码解析:药店APP开发的技术架构与实现难点
  • 开源GPU架构RISC-V VCIX的深度学习潜力测试:从RTL仿真到MNIST实战
  • PromptIDE提示词开发工具支持定向优化啦
  • Elasticsearch性能调优全攻略:从日志分析到集群优化
  • 数据结构中链表的含义与link
  • Blender 入门教程(三):骨骼绑定
  • undefined reference to CPUAllocatorSingleton::instance
  • 访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
  • 动态住宅IP代理的技术解析:优缺点与场景化应用