java面试(1)

Wesley13
• 阅读 778

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
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
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
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
java常用类(2)
三、时间处理相关类Date类:计算机世界把1970年1月1号定为基准时间,每个度量单位是毫秒(1秒的千分之一),用long类型的变量表示时间。Date分配Date对象并初始化对象,以表示自从标准基准时间(称为“历元”(epoch),即1970年1月1日08:00:00GMT)以来的指定毫秒数。示例:packagecn.tanjian
Wesley13 Wesley13
3年前
java中多态的实现机制
多态的概念:  简单来说就是事物在运行过程中存在的不同状态,即父类或接口定义的引用变量指向子类或具体实现类的实例对象。程序调用方法在运行期才进行动态绑定,而不是引用变量的类型中定义的方法。多态存在的前提:1、存在继承关系,子类继承父类;2、子类重写父类的方法;3、父类引用指向子类对象。具体实例:1、定义一个父类:Animal
Jacquelyn38 Jacquelyn38
3年前
你不可不知的JS面试题(第二期)
1、什么是继承?子类可以使用父类的所有功能,并且对功能进行扩展。新增方法改用方法(1)、ES6使用extends子类继承父类的方法。// 父类    class A        constructor(name)            this.name name;                getNa
Wesley13 Wesley13
3年前
java面向对象的三大特性
java面向对象的三大特性1.封装,把事物封装成抽象的类,通过访问控制符把自己的成员变量和函数对不可信的进行信息隐藏以及提供方法给可信的类和对象来操作。2.继承,继承可以使用现有类的所有功能和成员变量,并且无需重新编写原来的类的情况下对这些功能进行扩展。3.多态,实现了对代码的复用,多态具体体现为重载和重
Wesley13 Wesley13
3年前
JS必知的6种继承方式
JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢?让我们拭目以待JS继承的实现方式既然要实现继承,那么首先我们得有一个父类,代码如下:// 父类function Person(name) { // 给构造函数添加了参数  this.name  name;
Wesley13 Wesley13
3年前
JAVA面向对象
一、java面向对象的特征?答:java面向对象的特征:封装、继承、多态、抽象。如果问java面向对象的三大特征是什么?那就是封装、继承、多态,但说到面向对象,还有一个很主要的特征就是抽象。1、封装a)铺垫:Java把真实世界中某些具有共同特征的实体抽象成Java中的类,类的实例就是一个对象,而对象和真实世界的实体是一一
Stella981 Stella981
3年前
Python基础知识:类
初级篇面向过程:根据业务逻辑从上到下写垒代码函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可面向对象:对函数进行分类和封装,让开发“更快更好更强...”1、面向对象三大特性:封装、继承、多态。封装:将内容封装到某处,从某处调用被封装的内容;
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这