当前位置:首页 » 《资源分享》 » 正文

2021年9月面试视频总结_程序哈哈的博客

20 人参与  2021年11月01日 17:43  分类 : 《资源分享》  评论

点击全文阅读


一、面向对象(封装、继承、多态)
1.封装:set、get方法、可以定义命名某些规则。
2.继承:抽取公共部分属性和方法作为父类。
3.多态:继承、重写、父类类型子类对象,调用子类重写父类的方法,易于扩展维护。
二、jdk、jre、jvm的区别
1.jdk :java开发工具。
2.jre:java开发运行环境。
3.jvm:java虚拟机。
4.jdk包含jre、开发工具(java、javac、jconslo)。
5.jre包含jdk、lib类库。
6.我们写的.java文件通过javac编译成.class文件,再通过jvm根据lib类库生产机器码。
三、双=和equals的区别
1.:双=如果比较基本类型比较的是栈里放的变量值,如果比较的是引用类型比较的是栈里放的堆的地址值。
2.equals:如果没有重写的话和==没有区别,重写后的equals比较的是变量值。object,string都被重写了。
四、final的理解
1.final可以修饰类、方法、变量,都是不可以改变的。
2.为什么局部内部类和匿名内部类必须使用final修饰的局部变量?原因是外部类和内部类级别是一样的,编译后会生成两个.calss文件,而在编译的时候内部类可以复制外部类的局部变量成为内部类的局部变量,为了保证复制一致性使用final来修饰外部类的局部变量。
五、string、stringbuild、stringbuffer的区别
1.string:由于string是被final修饰的,所以每次操作都会创建一个新的对象。
2.stringbuild:线程不安全的,效率比较高。
3.stringbuffer:线程安全的,可以在多线程共享变量的情况下使用。
使用优先级:stringbulid>stringbuffer>string
六、重写和重载的区别
1.重载:重载是在同一个类中发生的,重载只和参数列表有关,方法要相同。
2.重写:重写是发生在父子类中的,方法名相同,参数列表相同,返回值小于等于父类,访问修饰大于等于父类,如果父类的访问修饰符是private则不能子类则不你能重写该方法。
七、接口和抽象类的区别
1.一个类只能单继承一个抽象类,一个类可以实现多个接口。
2.抽象类里边可以有实现了的方法,但接口里边全是未实现的方法。
3.抽象类的成员变量可以任意类型,在接口中的成员变量只能是public static final类型的。
4.他俩的设计目标不一样:接口是规范类的行为,抽象类是抽取公共部分作为公共类,为了代码复用设计的,抽象类功能比较强大,但是设计难度比较大,接口可以多实现设计难度比较小。


点击全文阅读


本文链接:http://zhangshiyu.com/post/30370.html

重写  部类  变量  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1