可能很多找编程工作的人在面试的时候都有这种感受,去到一个公司填写面试试题的时候,多数人往往死在比较基础的知识点上。不要奇怪,事实就是如此一般来说,大多数公司给出的基础题大概有122道,代码题19道左右。

  一般来说最先会考验你JAVA中比较基础的东西。比如“面向对象的特征有哪些方面 并依次解释含义?”;“int 和 Integer 有什么区别?";"String是最基本的数据类型吗?";

"原始封装类有哪些?"等等。虽然看似简单,但能够真正解释清楚的没有多少,这就充分体现了程序员对JAVA这门语言的理解是否深刻。接下来我就罗列几个JAVA中面试题中比较经典的面试题。

1.byet b=4,b1=3,b2=7   问b=b1+b2的结果是什么?为什么?;

  一般来说,初学者可能会回答结果b=10,这是不对的,结果会报错:可能会 损失精度。为什么呢?因为b1、b2是一个变量取值范围只有-128~127.如果这么做的话系统就会认为可能会超出BYTE的范围。

2.int a=3,b;  (1)b=a++和(2)b=++a  分别两次输出a和b的结果是什么?区别在于哪里?

  b=a++,因为a++要参与运算的时候要保留原值参与运算,所以它会先把a的值赋值给b,然后再做自增。所以结果就是 a=4,b=3。

b=++a。 但是当++在a前面的时候就有区别了,虽然会保留原值在内存但不会参与运算,所以并不会先赋值,而是先做自增,再做赋值运算。

3,short s=3;  (1)s+=4 与(2)s=s+4的 S的结果是什么?为什么?

我们先来说说(1) 最后输出的S为s=7 (2)则会报错:可能会丢失精度。因为在JAVA中4默认INT类型,s+=4与s=s+4的区别就在于前者运算的时候会在底层做一个强制数据类型转换,而后者不会,所以会报错。

4、&和&&的区别。 
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(短路与)(and)。

|和||也是一样,|是位运算符,表示按位或运算,||是逻辑运算符,表示逻辑或(短路或)(OR)。

5、描述一下JVM加载class文件的原理机制?
JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件。它负责在运行时查找和装入类文件的类。

6、String是最基本的数据类型吗?
基本数据类型包括byte、int、char、long、float、double、boolean和short。

JAVA中最容易让人忽视的基础。的更多相关文章

  1. Java中的比较总结

    Java中的比较问题是一个很基础又很容易混淆的问题.今天就几个容易出错的点作一个比较详细的归纳与整理,希望对大家的学习与面试有帮助. 一.==与equals()的区别 首先,我们需要知道==与equa ...

  2. 探究Java中的锁

    一.锁的作用和比较 1.Lock接口及其类图 Lock接口:是Java提供的用来控制多个线程访问共享资源的方式. ReentrantLock:Lock的实现类,提供了可重入的加锁语义 ReadWrit ...

  3. 【Java基础】Java中你必须知道的知识点

    目录 Java中面向对象的基础知识 1. 什么是面向对象  2. 三大基本特征和五项基本原则 3. Java的平台无关性 4. 值传递和引用传递 5. 方法重载和重写 6. 基本数据类型 7. 包装类 ...

  4. Java 编程语言中很少被人了解的特性-statement label

    下面的语句会编译报错或者打印什么? System.out.print("baidu site :"); https://www.baidu.com; System.out.prin ...

  5. Java中“附近的人”实现方案讨论及代码实现

    前言 在我们平时使用的许多app中有附近的人这一功能,像微信.qq附近的人,哈罗.街兔附近的车辆.这些功能就在我们日常生活中出现. 像类似于附近的人这一类业务,在Java中是如何实现的呢? 本文就简单 ...

  6. Java中的日期操作 分类: B1_JAVA 2015-02-16 17:55 6014人阅读 评论(0) 收藏

    在日志中常用的记录当前时间及程序运行时长的方法: public void inject(Path urlDir) throws Exception { SimpleDateFormat sdf = n ...

  7. Java中那些烦人的位运算(&,|...)

    & 和 && 相同点: 都表示"与"操作.这里的"与"和数学中的"与或非"中的"与"意义相同,都 ...

  8. Java中string 创建对象时 “”和null的差别

    null和""的差别 问题一: null和""的差别 String s=null; string.trim()就会抛出为空的exception String s ...

  9. Java中char和String 的深入理解 - 字符编码

    开篇 https://blog.csdn.net/weixin_37703598/article/details/80679376 我们并不是在写代码,我们只是将自己的思想通过代码表达出来! 1 将思 ...

随机推荐

  1. 【BZOJ1096】【ZJOI2007】仓库建设(斜率优化,动态规划)

    [BZOJ1096][ZJOI2007]仓库建设(斜率优化,动态规划) 题面 Description L公司有N个工厂,由高到底分布在一座山上.如图所示,工厂1在山顶,工厂N在山脚.由于这座山处于高原 ...

  2. textarea高度随内容自适应

    最近遇到一个需求,视频名称初始有个生成值,并且支持可以手动修改,修改后名称过长后换行高度随内容增加.刚开始想到用input但是发现input不支持换行.后来用了textarea,用js来控制,下面是实 ...

  3. PHPStorm 最新版 去掉参数提示 parameter name hints

    最新的phpstorm有个默认开启的参数名和类型提示功能, 这对于开发有很大的帮助,但是对于有些同学来说,刚开始可鞥不是很习惯,所以就需要把他给关闭. 在 配置面板中搜索 parameter name ...

  4. 关系型数据库工作原理-事务管理(一)(翻译自Coding-Geek文章)

    本文翻译自Coding-Geek文章:< How does a relational database work>. 原文链接:http://coding-geek.com/how-dat ...

  5. c# winform中的一段代码赏析

    我遇到了一个bug,是客户测试我们的产品,报出来的,而且有异常信息文件,这对于定位问题,很有帮助. 我找到源码看了下,bug还无法重现.于是我随便点点客户端,经过了几次调试,结果报出错误来了.客户端界 ...

  6. Linux shell 脚本(二)

    转载请标明出处:  http://blog.csdn.net/zwto1/article/details/45078837:  本文出自:[明月的博客] 五.字符串处理 1.子串截取操作: 路径分割: ...

  7. PAT乙级-1043. 输出PATest(20)

    给定一个长度不超过10000的.仅由英文字母构成的字符串.请将字符重新调整顺序,按"PATestPATest...."这样的顺序输出,并忽略其它字符.当然,六种字符的个数不一定是一 ...

  8. thinkPHP5使用的一些小配置

    开发环境: 版本:php5.6 系统:windows 工具:phpstudy.vscode 遇到的报错信息error: 一.原php5.4版本(不限定)切换到5.6版本,路由报错: No input ...

  9. 用于 SELECT 和 WHERE 子句的函数

    一个 SQL 语句中的 select_expression 或 where_definition 可由任何使用了下面所描述函数的表达式组成. 包含 NULL 的表达式总是得出一个 NULL 值结果,除 ...

  10. Go语言学习1

    1.go标示符:非空字母或者数字串,第一个必须是字母,不能为关键字,可以是下划线. 2.go关键字: break,default,func,interface,select, case,defer,g ...