Java学科面试宝典 v1.0

本文由用户“Sukiza”分享发布 更新时间:2020-03-21 20:34:14 举报文档

以下为《Java学科面试宝典 v1.0》的无排版文字预览,完整格式请下载

下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

尚硅谷——Java面试题

一 Java基础阶段

1.1 面向对象

1. 面向对象的特征有哪些方面?

面向对象的特征主要有以下几个方面:

1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地 注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一 部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。

2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了 一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称 为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原 始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量 , 并且类可以修改或增加新的方法使之更适合特殊的需要。

3)封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面 。 面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封 装的对象,这些对象通过一个受保护的接口访问其他对象。

4)多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参 数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的 优势,很好的解决了应用程序函数同名问题

2. Java多态的具体体现

面向对象编程有四个特征:抽象,封装,继承,多态。

多态有四种体现形式:

1. 接口和接口的继承。

2. 类和类的继承。

3. 重载。

4. 重写。

其中重载和重写为核心。

重载:重载发生在同一个类中,在该类中如果存在多个同名方

法,但是方法的参数类型和个数不一样,那么说明该方法被重

载了。

重写:重写发生在子类继承父类的关系中,父类中的方法被子

类继承,方法名,返回值类型,参数完全一样,但是方法体不

一样,那么说明父类中的该方法被子类重写了。

3、什么时候用 assert?

答:assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都 支持这种机制。一般来说,assertion 用于保证程序最基本、关键的正确性。 assertion 检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion 检查通常是关闭的。在实现中,断言是一个包含布尔表达式的语句, 在执行这个语句时假定该表达式为 true;如果表达式计算为 false,那么系统 会报告一个 Assertionerror。 断言用于调试目的: assert(a > 0); // throws an Assertionerror if a >位运算,右移动一位。 容量相当于扩大了1.5倍;

举例说明:添加20个元素到ArrayList中

当第一次插入元素时才分配10(默认)个对象空间。之后扩容会按照1.5倍增长。

也就是当添加第11个数据的时候,Arraylist继续扩容变为10*1.5=15;

当添加第16个数据时,继续扩容变为15 * 1.5 =22个;

13、HashMap扩容机制

三个常量

static final int DEFAULT_INITIAL_CAPACITY = 16;

static final int MAXIMUM_CAPACITY = 1 请点击下方选择您需要的文档下载。

  1. 幼儿园中班科学《病毒大作战》
  2. 疾控中心洁净实验室设计
  3. C 程序设计课程标准
  4. 电视购物剧本
  5. 晨读材料使用方法
  6. 100条吸引人的标题
  7. 工厂5S管理大纲
  8. 科学佩戴口罩方法
  9. 防疫消毒方法
  10. 企业价值评估方法
  11. 2020-《应用密码学》-实验指导书之二 - zhjq
  12. 浅谈数学核心素养及其在课堂教学中的落实
  13. c++基础和进阶课堂讲义
  14. python第一节课件
  15. Java学科面试宝典 v1.0
  16. IPQA检查员作业技巧

以上为《Java学科面试宝典 v1.0》的无排版文字预览,完整格式请下载

下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

图片预览