java面试(1)

1.面向对象的基本特征

  封装、继承、多态、

  封装:把客观事物封装成类

  继承:继承一个类,就可以使用这个类的所有功能,并且在无需编写原来类的情况下对这些功能进行扩展

  多态:子对象调用父对象,父对象会根据当前调用的子对象以不同的方式运作

  实现多态:覆盖,重载

2.final\finally\finalize的区别

  final声明方法、属性、类,分别表示方法不可覆盖、属性不可变、类不可继承

  finally是异常处理中的一部分,表示总是执行

  finalize是Object类的一个方法,在垃圾收集器执行的时候会调用此方法。可以覆盖此方法提供垃圾收集时其他资源的回收,JVM 不保证此方法总被调用

3,int和integer

  int是Java八大基本类型之一,integer是int的封装类

  int初始值为0,integer初始值为null

  不能互用

4.重载和重写

  重载Overload,表示一个类中有多个名字相同的方法,但其参数列表不同

  重写:子类中的某个方法与父类完全一致,相当与完全覆盖父类中的这个方法,这样子类会比父类抛出更少的异常。

5.抽象类和接口

参数

抽象类

接口

默认的方法实现

可以有默认的方法实现

完全抽象的,不存在方法的实现

实现

extends、如果子类不是抽象类,则需要提供抽象类中所声明的所有方法的实现

implements需要提供接口中所有声明方法的实现

构造器

可以有

不能有

与正常java类的区别

不能实例化,其他没区别

完全不同的类型

访问修饰符

public/protected/default

public、jdk9可以用private

main方法

可以有main方法,并且可以运行

没有

继承

可以继承一个类和实现多个接口

只能继承一个或多个接口

速度

满,需要时间寻找实现方法

添加新方法

可以提供默认的实现

必须改变实现类

6.反射的用途和实现

  运用反射可以在运行期间获取对象的类型信息

  实现:

  getClass()方法、class.forName()方法、使用类.class、使用类加载器实现getClassLoader()

7.Session和Cookie的区别、

  1. cookie存放在浏览器上,session存放在服务器
  2. cookie不安全,session安全
  3. session会在一定时间内保存在服务器中,会占用服务器,影响性能
  4. 单个cookie保存的数据不能超过4k,很多浏览器只能保存20个cookie
  5. 登陆信息放在session,其他放在cookie
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java中多态的实现机制

多态的概念:  简单来说就是事物在运行过程中存在的不同状态,即父类或接口定义的引用变量指向子类或具体实现类的实例对象。程序调用方法在运行期才进行动态绑定,而不是引用变量的类型中定义的方法。多态存在的前提:1、存在继承关系,子类继承父类;2、子类重写父类的方法;3、父类引用指向子类对象。具体实例:1、定义一个父类:Animal

java面向对象的三大特性

java面向对象的三大特性1.封装,把事物封装成抽象的类,通过访问控制符把自己的成员变量和函数对不可信的进行信息隐藏以及提供方法给可信的类和对象来操作。2.继承,继承可以使用现有类的所有功能和成员变量,并且无需重新编写原来的类的情况下对这些功能进行扩展。3.多态,实现了对代码的复用,多态具体体现为重载和重

你不可不知的JS面试题(第二期)

1、什么是继承?子类可以使用父类的所有功能,并且对功能进行扩展。新增方法改用方法(1)、ES6使用extends子类继承父类的方法。// 父类    class A        constructor(name)            this.name name;                getNa