1. 你对java垃圾回收了解吗?什么时候需要使用?

答: 垃圾回收器的作用是查找和回收(清理)无用的对象,从而让jvm更 有效的使用内存。但是运行因为垃圾回收本身会有开销,过于频繁的使用会导致性能下降。比如有些程序在短期内需要大量的内存,这时候有必要强制下达一条垃圾回收命令,以便于有更多可用的物理内存。垃圾回收的目的就是识别并且丢弃应用不再使用的对象来释放和重用资源。

2.static理解什么?什么时候需要使用?

答:static是修饰词,被static关键字修饰的方法/变量不需要依赖对象来进行访问,也就是说只要类被加载了,就可以通过类名去进行访问。当一个方法或变量需要初始化加载的时候,或是经常需要被调用的时候需要加上static。

3.多线程问题,当多个线程需要访问多个资源时,怎样才能保证不死锁。

答:多线程中避免死锁的方式是:指定一个获取锁的顺序,使得所有的线程都是以同样的顺序进行获取锁和释放锁,这样就能避免死锁的情况。

4.字符串之间(str1与str2)的拼接有几种方式,并且区别是什么?

答:有两种方式,str1+str2 直接使用+进行拼接,或是使用StringBuilder的方式

【StringBuilder sb= new StringBuilder();

sb.append(str1);

sb.append(str2);】  如果通过循环1000次数拼接测试 发现StringBuilder在拼接繁杂的情况下,其中的耗时比+进行拼接的方式要少。如果拼接的字符串比较多则可以优先考内存时。结合耗时我们可以得出这样的结论,在使用大量字符串拼接的时候优先使用StringBuilder。

5.你对二叉树了解吗?

答:二叉树的每个节点最多有两个子树,左右子树是有顺序的,即使只有一个子树也要区分二叉树。二叉树的遍历,从根节点出发,按照某种次序访问二叉树的所有节点。(前序 中序 后序遍历)

6.变量A和B,需要交换值,但是没第三个变量,怎么实现?

答: A=A+B; B=A-B; A=A-B; 最后输出 A B

java基础问题巩固(1)的更多相关文章

  1. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  2. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  3. 【JAVA面试题系列一】面试题总汇--JAVA基础部分

    JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...

  4. 最适合作为Java基础面试题之Singleton模式

    看似只是最简单的一种设计模式,可细细挖掘,static.synchronized.volatile关键字.内部类.对象克隆.序列化.枚举类型.反射和类加载机制等基础却又不易理解透彻的Java知识纷纷呼 ...

  5. java基础练习 字符串,控制流,日历,日期等

    1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...

  6. Java基础知识【下】( 转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  7. Java基础知识【上】(转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  8. java基础学习03(java基础程序设计)

    java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...

  9. Java基础加强之多线程篇(线程创建与终止、互斥、通信、本地变量)

    线程创建与终止 线程创建 Thread类与Runnable接口的关系 public interface Runnable { public abstract void run(); } public ...

  10. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

随机推荐

  1. SpinnerViewPop【PopWindow样式(单选)、Dialog样式(单选+多选)的下拉菜单】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 对下拉菜单的文本区域和列表区域进行了封装.包括两种展现方式:popwindow(单选).dialog(单选+多选) 因为该封装需要在 ...

  2. Java集合与泛型中的几个陷阱,你掉进了几个?

    下面我总结了集合.泛型.数组转集合等一些常见的陷进,认真看完,相信你绝对有所收获. 1.List ,List<?> 与 List<Object> 有区别吗? 说实话,我敢保证很 ...

  3. 深入理解Linux内核 学习笔记(3)

    第三章 进程 可以看到很多熟悉的结构体 进程状态: 可运行状态(TASK_ RUNNING) 进程要么在CPU上执行,要么准备执行. 可巾断的等待状态(TASK_ INTERRUPTIBLE) 进程被 ...

  4. 深入浅出NIO Socket实现机制

    前言 Java NIO 由以下几个核心部分组成: Buffer Channel Selector 以前基于net包进行socket编程时,accept方法会一直阻塞,直到有客户端请求的到来,并返回so ...

  5. Fundebug支持浏览器报警

    摘要: 除了邮件报警和第三方报警,我们新增了浏览器报警功能. 邮件报警与第三方报警 Fundebug是专业的应用BUG监控服务,当您的线上应用,比如网页.小程序.Java等发生BUG时,我们会第一时间 ...

  6. Python机器学习实践:决策树判别汽车金融违约用户

    文章发布于公号[数智物语] (ID:decision_engine),关注公号不错过每一篇干货. 转自 | 法纳斯特(公众号ID:walker398) 作者 | 小F 决策树呈树形结构,是一种基本的回 ...

  7. 魅族5.0以上设备(亲测有效)激活Xposed框架的流程

    对于喜欢研究手机的哥们来说,大多时候会使用到Xposed框架及种种功能强大的模块,对于5.0以下的系统版本,只要手机能获得ROOT权限,安装和激活Xposed框架是比较简单的,但随着系统版本的持续更新 ...

  8. Scrapy 框架流程详解

    框架流程图 Scrapy 使用了 Twisted 异步非阻塞网络库来处理网络通讯,整体架构大致如下(绿线是数据流向): 简单叙述一下每层图的含义吧: Spiders(爬虫):它负责处理所有Respon ...

  9. webstorm2018.1 汉化

    https://github.com/pingfangx/TranslatorX 这个百度云 选择webstorm 选择勾选的文件 选择你下载webstorm 的版本 我下载的是2018.1的 之后等 ...

  10. Spark MLlib KMeans 聚类算法

    一.简介 KMeans 算法的基本思想是初始随机给定K个簇中心,按照最邻近原则把分类样本点分到各个簇.然后按平均法重新计算各个簇的质心,从而确定新的簇心.一直迭代,直到簇心的移动距离小于某个给定的值. ...