31、内部类可以引用它的外部类的私有成员吗?

可以,内部类对象可以访问创建它的外部类对象的成员

32、final关键字有哪些用法?

修饰类时该类不能被继承,修饰方法时,该方法不能被重写,修饰变量时表示为常量

33、java创建对象时构造器调用顺序?

先初始化静态成员(只会初始化一次),然后调用父类构造器,再初始化非静态成员,最后调用自身构造器。

class A {

static {

System.out.print("Astatic");

}

public A() {

System.out.print("A");

}    }

class B extends A{

static {

System.out.print("Bstatic");

}

public B() {

System.out.print("B");

}    }

public class Hello {

public static void main(String[] args) {

A ab = new B();

ab = new B();

}    }

输出结果为AstaticBstaticABAB

34、如何实现字符串和基础数据类型的相互转换?

调用基本数据类型对应的包装类中的方法parseXXX(String)或valueOf(String)即可返回相应基本类型;调用String 类中的valueOf()方法返回相应字符串或使用基本数据类型与空字符串连接

35、使用递归实现字符串的反转

public static String reverse(String Str) {

if(Str == null || Str.length() <= 1)

return Str;

return reverse(Str.substring(1)) + Str.charAt(0);

}

36、将GB2312编码的字符串转换为ISO-8859-1编码的字符串?

String s1 = "wow";

String s2 = new String(s1.getBytes("GB2312"), "ISO-8859-1");

37、java和javaSciprt的区别

两个公司的不同产品;java是真正的面向对象的语言,即使是开发简单的程序,必须设计对象;JavaScript是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是一种基于对象和事件驱动的编程语言,内置丰富的对象供人使用;java是静态语言js是动态语言;Java的源代码在执行之前,必须经过编译。JavaScript是一种解释性编程语言,其源代码不需经过编译,由浏览器解释执行;java是强类型语言即所有变量在编译之前必须作声明,js是弱类型语言;代码格式也不一样。

38、Error和Exception有什么区别?

Error表示系统级的错误和程序不必处理的异常,是指能恢复但很困难的情况下的一种严重问题;比如内存溢出,不可能指望程序能处理这样的情况;Exception表示需要捕捉或者需要程序进行处理的异常,是一种设计或实现问题;也就是说,它表示如果程序运行正常,从不会发生的情况。

39、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行,在return前还是后?
会执行,在方法返回调用前执行

40、关键字:throws、throw、try、catch、finally分别如何使用?
try用来指定一块预防所有异常的程序;catch子句紧跟在try块后面,用来指定你想要捕获的异常的类型;throw语句用来明确地抛出一个异常;throws用来声明一个方法可能抛出的各种异常(当然声明异常时允许无病呻吟);finally为确保一段代码不管发生什么异常状况都要被执行;

java面试题复习(四)的更多相关文章

  1. 【转】常见Java面试题 – 第四部分:迭代(iteration)和递归(recursion)

    ImportNew注: 本文是ImportNew编译整理的Java面试题系列文章之一.你可以从这里查看全部的Java面试系列. Q.请写一段代码来计算给定文本内字符“A”的个数.分别用迭代和递归两种方 ...

  2. java面试题汇总四

    第三部分 Java SE基础 3.1 java多线程 3.1.1 线程的实现方式,怎么启动线程怎么区分线程? 1.线程的实现方式: 有 4 种方式可以用来创建线程: 2.继承 Thread 类   2 ...

  3. Java面试题复习笔记(数据库)

    1.数据库分类? 关系型数据库和非关系型. 常用关系型:Myspl.Oracle.SQLServer 非关系型:Redis.Hadoop.Memcache.Mogobd 2.关系数据库三范式? 范式就 ...

  4. java面试题复习(一)

    //基础最重要,如果面试官问一个答不上一个,那有难度的都都不用问了,直接就pass了,就像我,嘿嘿. //每天最好熟记10个问题,这些问题在编程是会很厚帮助,帮你避免很多不应该出现的错误. 一.面向对 ...

  5. 一天十道Java面试题----第四天(线程池复用的原理------>spring事务的实现方式原理以及隔离级别)

    这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 31.线程池复用的原理 32.spring是什么? 33.对Aop的理解 34.对IOC的理解 35.BeanFactor ...

  6. Java面试题复习笔记(Web方向)

    1.Http中get和post请求的区别? 共同点:都是Http请求方式,用户可以通过不同的请求方式完成对资源(Url)的操作.具体来讲就是get一般用于获取/查询资源信息,post用于更新资源信息. ...

  7. java面试题复习(八)

    71.如何通过反射创建对象? 方法1:通过类对象调用newInstance()方法,例如:String.class.newInstance()  方法2:通过类对象的getConstructor()或 ...

  8. java面试题复习(七)

    61.jdbc的操作步骤 加载驱动:Class.forName("oracle.jdbc.driver.OracleDriver"); 创建连接:Connection con =D ...

  9. java面试题复习(六)

    51.实现多线程的方法 一种是继承Thread类:另一种是实现Runnable接口.两种方式都要通过重写run()方法来定义线程的行为,推荐使用后者,因为Java中的继承是单继承,一个类有一个父类,如 ...

随机推荐

  1. C++插入排序

    直接插入排序是一种简单的插入排序法,适用于少量数据的排序,是一种较为稳定的排序算法,本文通过插入排序的方法实现对一个数组进行从大到小和从小到大的排序. 1. 从小到大的插入排序: 例如:给定整型数组a ...

  2. robotframework之用cmd去执行用例

    1.电脑cmd进入 2.在cmd中输入相应的执行命令即可以正常执行 3.执行完成,会显示当前用例执行情况,以及output/log/report的默认保存路径 接下来详细说一下执行不同用例的具体指令, ...

  3. kali在执行 apt-get update 命令时报错的解决方法

    报错内容: root@kali:~# apt-get updateGet:1 http://kali.mirror.garr.it/mirrors/kali kali-rolling InReleas ...

  4. ssh_exchange_identification: read: Connection reset by peer

    vim /etc/hosts.deny 删除ip 借鉴:https://www.sunnyos.com/article-show-81.html

  5. 关于WebService

    转自于:https://www.cnblogs.com/xdp-gacl/p/4048937.html 一.序言 大家或多或少都听过 WebService(Web服务),有一段时间很多计算机期刊.书籍 ...

  6. Cross Platform Note: STD C++ Preprocessor directives & pre-defined macros

    ref: http://www.cplusplus.com/doc/tutorial/preprocessor/ concolusion: directives: #define #undef #in ...

  7. SMD 自动点料机维修

    SMD 自动点料机维修 这个工具是一个好帮手,但是过完年回来发现坏了. 设置了数量不会自动停,按停止键没有反应,一定要按打印键才能停止. 这可愁死我了. 正常情况下开机设置好数量,然后开始点数,点到数 ...

  8. JVM-crash查看hs_err_pid.log日志

    参考链接: https://www.cnblogs.com/shiyangxt/archive/2009/01/06/1370627.html https://blog.csdn.net/chenss ...

  9. Dynamics 365—脚本

    Xrm.Page.getAttribute() 转控件:controls.get(0) 取赋值:getValue(),setValue() 是否改动:getIsDirty() 表单载入时的值:getI ...

  10. 通用路由封装协议——GRE

    一.GRE简介 通用路由封装协议GRE(Generic Routing Encapsulation)可以对某些网络层协议(如IPX.ATM.IPv6.AppleTalk等)的数据报文进行封装,使这些被 ...