位置: IT常识 - 正文

一天十道Java面试题----第一天(面向对象-------》ArrayList和LinkedList)(java一天速成)

编辑:rootadmin
这里是参考B站上的大佬做的面试题笔记。大家也可以去看视频讲解!!! 文章目录 1、面向对象2、JDK、JRE、JVM区别和联系3、==和equals4、final5、String 、StringBuffer、StringBuilder区别及使用场景6、重载和重写的区别7、接口和抽象类8、List和S ...

推荐整理分享一天十道Java面试题----第一天(面向对象-------》ArrayList和LinkedList)(java一天速成),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:java一天速成,每天一道java面试题,java一天工作多长时间,每天一道java面试题,java工程师一天写多少代码,java一天速成,java一天速成,java一天速成,内容如对您有帮助,希望把文章链接给更多的朋友!

这里是参考B站上的大佬做的面试题笔记。大家也可以去看视频讲解!!!

文章目录1、面向对象2、JDK、JRE、JVM区别和联系3、==和equals4、final5、String 、StringBuffer、StringBuilder区别及使用场景6、重载和重写的区别7、接口和抽象类8、List和Set9、hashget="_blank">code和equals10、ArrayList和Linkedlist1、面向对象

1.1、 什么是面向对象?

对比面向过程、是两种不同的处理问题的角度 面向过程更注重事情的没一个步骤及顺序,面向对象更注重事情有哪些参与者(对象),及各自需要做什么。

例如:洗衣机洗衣服

面向过程会将任务拆解成一系列的步骤(函数),1、打开洗衣机---->2、放衣服------>3、放洗衣粉---->4、清洗------>5、烘干面向对象会拆出人和洗衣机两个对象:人:打开洗衣机,放衣服,放洗衣粉。洗衣机:清洗、烘干

从以上例子可以看出:面向过程比较直观高效,而面向对象更易于复用,扩展和维护。

1.2 、面向对象

封装

封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,内部细节对外部调用透明,外部调用无需修改或者关心内部实现。

1、javabean的属性私有,提供get/set对外访问,因为属性的赋值或者获取逻辑只能由javabean本身决定,而不能由外部胡乱修改。

一天十道Java面试题----第一天(面向对象-------》ArrayList和LinkedList)(java一天速成)

2、orm框架:操作数据库,我们不需要关心链接时如何建立的,sql时如何执行的,只需要引入mybatis,调方法即可。

继承

继承基类的方法,并做出自己的改变或扩展子类共性的方法或者属性直接使用父类的,而不需要自己再定义,只需扩展自己个性化的

多态

基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。继承,方法重写,父类引用指向子类对象父类类型 变量名 = new 子类对象;变量名.方法名();

无法调用子类特有的功能

2、JDK、JRE、JVM区别和联系

JDK:

java Develpment Kit java 开发工具

JRE:

java Runtime Environment java 运行时环境

JVM:

java Virtual Machine java 虚拟机

3、==和equals对比的时栈中的值,基本数据类型是变量值,引用类型是堆中内存对象的地址equals:object中默认也是采用比较,通常会重写String类中被复写的equals()方法其实是比较两个字符串的内容

举例

@Test void test(){ String str1 = "hello"; String str2 = new String("hello"); String str3 = str2;//引用传递 System.out.println("123"); System.out.println("(str1 == str2):"+(str1 == str2));//false System.out.println("(str1 == str3):"+(str1 == str3));//false System.out.println("(str2 == str3):"+(str2 == str3));//true System.out.println("str1.equals(str2):"+str1.equals(str2));//true System.out.println("str1.equals(str3):"+str1.equals(str3));//true System.out.println("str2.equals(str3):"+str2.equals(str3));//true }

4、final

4.1、简述final作用 最终的

修饰类:表示类不可被继承修饰方法:表示方法不可被子类覆盖,但是可以重载修饰变量:表示变量一旦被赋值就不可以更改它的值。

(1) 、 修饰成员变量

如果final修饰的类变量,只能在静态初始化块中指定初始值或
本文链接地址:https://www.jiuchutong.com/zhishi/310296.html 转载请保留说明!

上一篇:帝国CMS怎么使用二级域名(帝国cms移动端)

下一篇:vue如何实现路由跳转到外部链接界面(vue如何实现路由跳转缓存)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络