美文网首页
Java基础

Java基础

作者: 清阳_ | 来源:发表于2019-05-29 15:39 被阅读0次

1.什么是反射,有什么作用和应用?

  • 思路:简述反射的定义,功能和应用。
参考答案:
  • 含义:在运行状态中,对于任意一个类都能知道它的属性和方法。对于任何一个对象都能调用它的任何一个方法和属性。

  • 功能:动态性,体现在:在运行时判断任意一个类所具有的属性和方法;在运行时调用任意一个对象的方法;生成动态代理

  • 应用:反射&泛型

2.什么是内部类?有什么作用?静态内部类和非静态内部类的区别?

参考答案:
  • 内部类就是定义在另一个类里面的类。它隐藏在外部类中,封装性更强,不允许除了外部类的其他类访问它;但是它可以直接访问外部类的成员。
静态内部类和非静态内部类的区别有:
  • 静态内部类是指被声明为static的内部类,可不依赖外部类实例化;而非静态内部类需要通过生成外部类间接生成。
  • 静态内部类只能访问外部类的静态成员变量和静态方法,而非静态内部类需要通过生成外部类来间接生成。
  • 静态内部类只能访问外部类的静态成员变量和静态方法发,而非静态内部类由于持有外部类的引用,可以访问外部类的所有成员。

3.final、finally、finalize()分别表示什么含义?

参考答案:
  1. final关键字表示不可更改,具体体现在:
  • final修饰的变量必须要初始化,且赋值后不能重新赋值。即变量变常-- 量
  • final修饰的方法不能被子类重写
  • final修饰的类不能被继承

2.finally:和try、catch成套使用进行异常处理,无论是否捕获或处理异常,finally块里的语句都会被执行,以下4中特殊情况不执行:

  • 在finally语句中发生了异常
  • 在前面的代码中用了System.exit()退出程序
  • 程序所在的线程死亡
  • 关闭CPU

3.finalize():是Object中的方法,当垃圾回收器讲回收对象从内存中清楚出去之前会调用finalize(),但此时并不代表改回收对象一定会"死亡",还有机会"逃脱"

4.重写和重载的区别?

参考答案:
  • 重载:表示在同一个类中,可以有多个名称相同的方法, 参数类型和个数不同即可。
  • 重写:表示在子类中,可以有与父类中的某个方法名称和参数完全相同的方法。

5.抽象类和接口的区别?

参考答案:

1.使用上的区别:一个类只能继承一个抽象类却可以实现多个接口
2.设计上的区别:接口是对行为的抽象,无需有子类的前提,是自上而下的设计理念;抽象类是对类的抽象,建立于相似子类之上,是自下而上的设计理念。

6.为什么匿名内部类中使用局部变量要用final修饰?

参考答案:
  • 一方面,由于方法中的局部变量的生命周期很短,一旦方法结束变量就要背销毁,为了保证在内部类中能找到外部局部变量,通过final关键字可得到一个外部变量的引用;
  • 另一方面,通过final关键字也不会再内部类去做修改该变量的值,保护了数据的一致性。

7.Object有哪些共有方法?

参考答案:
  • equals(): 和==作用相似
  • hashCode() : 用于哈希查找,重写了equals()一般都要重写该方法
  • getClass() :获取Class对象
  • wait() :让当前线程进入等待状态,并释放它所持有的锁
  • notify() & notifyAll():唤醒一个(所有)正处于等待状态的线程
  • toString():转换成字符串

相关文章

  • Java 基础

    Java 基础01Java开发入门 Java 基础02Java编程基础 Java 基础03面向对象 Java 基础...

  • 技术体系

    一,java核心 java基础,jvm,算法,多线程,设计模式 Java基础:java基础相关,全栈java基础 ...

  • 面试题汇总

    1.Java基础面试问题 Java基础之基础问题 Java基础之面向对象 Java基础之数据结构 Java基础之I...

  • 【Android】知识点汇总,坚持原创ing

    Android基础 Java基础 Java基础——Java内存模型和垃圾回收机制 语法基础 语法基础——C语法基础...

  • Java基础:反射

    反射注解动态代理相关阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 ...

  • Java基础:注解

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 1. 概述 注解...

  • Java基础:动态代理

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 概述 在运行时,...

  • Java 集合类原理

    Java基础——HashMap源码分析 Java基础——HashSet源码分析 Java基础——HashTable...

  • Java基础:类加载器

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 1. 什么是类加...

  • java基础(一)-String、StringBuffer、St

    java基础-String、StringBuffer、StringBuilder java基础小白,初学java,...

网友评论

      本文标题:Java基础

      本文链接:https://www.haomeiwen.com/subject/vtrytctx.html