• Java基础中常用面试题


    1、抽象类和接口有什么区别?

    相同点

    代表系统的抽象层

    都能包含抽象方法

    用于描述系统提供的服务,不必提供具体实现

    不同点:在抽象类中可以为部分方法提供默认实现,而接口中只能包含抽象方法

    抽象类便于复用,接口便于代码维护

     

     

    2、重写和重载的区别?

    他们之间没有任何关联

    重写:方法名相同参数列表相同,返回值相同或者是其子类,访问修饰符不能严于父类,抛出的异常不能大于父类

    重载:是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同和返回值无关。

     

    3、Java面向对象的三大特性是什么?

    继承:就是从已有的类继承信息创建新类的过程,被继承的类称为父类,继承的类叫做子类。子类可以全盘接受父类的所有属性和方法(甚至是private修饰的,也可以继承,但是不能在父类之外访问,提供共有的访问方法(比如封装set()get())就可以用)。

    封装:就是将属性私有化,提高安全性。

      封装的步骤:

    1. 将属性私有化 private      如:private  String sex;
    2.  编写setter方法,可以针对用户输入的值进行判断
    3.  编写getter方法,来获取值

    多态:同样的一种物质,在不同条件下,所呈现出来的状态是不同的。

    语法:父类名 父类引用 = new 子类类名()

     

    4、equals()   和  ==   的区别?
         ==           比较的是地址值
       equals()    比较的是内容

     

    5、ArrayList和LinkedList的有什么区别?

    ArrayList:实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高。

    LinkedList:采用链表存储方式。插入、删除元素时效率比较高。

    6、写出异常的语法(throw和try)?
    语法
    try{
    //将可能出现异常的代码都放入try中
    }catch(){
    //在一段程序中catch可以有多个,来捕获异常类型,当出现了某种异常就会中断 异常代码后面的内容继而执行对应的catch中的内容
    //需要注意的是  异常的范围需要从小到大写   范围小的异常放在上面,范围大的异常放在下面
    }finally{
    //在程序中一定会被执行的内容,除非是遇到了exit()方法
    当程序中有return的时候,是会先执行finally中的内容,然后执行return。
    }
    throws Exception: 声明异常
    方法名后声明, 将异常交给调用者去处理了,如果调用者不处理依然会出现异常,除非是使用 try catch
    throw new Exception();抛出异常
    自定义异常
    声明一个类继承RuntimeException
    重写有参无惨够造方法,最后调用

     

     

  • 相关阅读:
    什么是web框架
    编写CGI程序步骤
    web开发 c/s结构 和 b/s结构
    python自带的web服务器
    自制计算器
    条件判断
    模版继承
    参数传递
    异常处理
    【uoj#244】[UER #7]短路 CDQ分治+斜率优化dp
  • 原文地址:https://www.cnblogs.com/jiyaoyu/p/12944465.html
Copyright © 2020-2023  润新知