zoukankan      html  css  js  c++  java
  • java知识汇总(第六天)

    49、Java的接口和C++的虚类的相同和不同处。
    由于 Java 不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方
    法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接
    口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性 ,
    并且接口里面的属性在默认状态下面都是 public static,所有方法默认情况下是 public.一个类
    可以实现多个接口。
    50、Java中的异常处理机制的简单原理和应用。
    当 JAVA 程序违反了 JAVA 的语义规则时,JAVA 虚拟机就会将发生的错误表示为一个
    异常。违反语义规则包括 2 种情况。一种是 JAVA类库内置的语义检查。例如数组下标越界,
    会引发 IndexOutOfBoundsException;访问 null 的对象时会引发 NullPointerException。另一种
    情况就是 JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在
    何时用 throw 关键字引发异常。所有的异常都是 java.lang.Throwable 的子类。
    51、垃圾回收的优点和原理。并考虑2 种回收机制。
    Java 语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理
    的问题迎刃而解,它使得 Java 程序员在编写程序的时候不再需要考虑内存管理。由于有个
    垃圾回收机制,Java 中的对象不再有"作用域"的概念,只有对象的引用才有"作用域"。垃圾
    回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单
    独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对
    象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回
    收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。
    52、请说出你所知道的线程同步的方法。
    wait():使一个线程处于等待状态,并且释放所持有的对象的 lock。
    sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉
    InterruptedException 异常。
    notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的
    唤醒某一个等待状态的线程,而是由 JVM 确定唤醒哪个线程,而且不是按优先级。
    notityAll():唤醒所有处入等待状态的线程,注意并不是给所有唤醒线程一个对象的锁,
    而是让它们竞争。
    53、你所知道的集合类都有哪些?主要方法?
    最常用的集合类是 List 和 Map。
    List 的具体实现包括 ArrayList 和 Vector,它们是可变大小的列表,比较适合构建、存
    储和操作任何类型对象的元素列表。 List 适用于按数值索引访问元素的情形。
    Map 提供了一个更通用的元素存储方法。 Map 集合类用于存储元素对(称作"键"和"
    值"),其中每个键映射到一个值。
    54、描述一下JVM 加载class文件的原理机制?
    JVM 中类的装载是由 ClassLoader 和它的子类来实现的,Java ClassLoader 是一个重要的
    Java 运行时系统组件。它负责在运行时查找和装入类文件的类。
    55、char型变量中能不能存贮一个中文汉字?为什么?
    能够定义成为一个中文的,因为 java 中以 unicode 编码,一个 char 占 16 个字节,所以
    放一个中文是没问题的
    56、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
    多线程有两种实现方法,分别是继承 Thread 类与实现 Runnable 接口同步的实现方面有
    两种,分别是 synchronized,wait 与 notify
    57、JSP的内置对象及方法。
    request 表示 HttpServletRequest 对象。它包含了有关浏览器请求的信息,并且提供了几
    个用于获取 cookie, header, 和 session 数据的有用的方法。
    response 表示 HttpServletResponse 对象,并提供了几个用于设置送回浏览器的响应的方
    法(如 cookies,头信息等)
    out 对象是 javax.servlet.jsp.JspWriter 的一个实例,并提供了几个方法使你能用于向浏览
    器回送输出结果。
    pageContext 表示一个 javax.servlet.jsp.PageContext 对象。它是用于方便存取各种范围的
    名字空间、servlet 相关的对象的 API,并且包装了通用的 servlet 相关功能的方法。
    session 表示一个请求的 javax.servlet.http.HttpSession 对象。Session 可以存贮用户的状态
    信息
    applicaton 表示一个 javax.servle.ServletContext 对象。这有助于查找有关 servlet 引擎和
    servlet 环境的信息
    config 表示一个 javax.servlet.ServletConfig 对象。该对象用于存取 servlet 实例的初始化
    参数。
    page 表示从该页面产生的一个 servlet 实例
    58、线程的基本概念、线程的基本状态以及状态之间的关系
    线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个
    线程,也就是程序本身。Java 中的线程有四种状态分别是:运行、就绪、挂起、结束。
    59、JSP的常用指令
    <%@page
    language="java"
    csession="true"
    buffer="64kb"
    autoFlush="true"
    isThreadSafe="true"info="text"
    errorPage="error.jsp"
    isErrorPage="true"
    isELIgnored="true"page Encoding="gb2312" import="java.sql.*"%>
    isErrorPage(是否能使用 Exception 对象),isELIgnored(是否忽略表达式)
    <%@include file="filename"%>
    <%@taglib prefix="c"uri="http://......"%>
     
  • 相关阅读:
    day3---字符串的索引与切片
    day4---int bool str之间相互转换
    day3---数据类型整体分析
    day2---while else
    day2---运算符
    day2---格式化输出
    ES6-04 Promise设计 类 模块
    jquery02-效果动画
    jquery01-基础使用
    bootstrap-03 常用重要组件(2)
  • 原文地址:https://www.cnblogs.com/20183544-wangzhengshuai/p/15257370.html
Copyright © 2011-2022 走看看