可能很多找编程工作的人在面试的时候都有这种感受,去到一个公司填写面试试题的时候,多数人往往死在比较基础的知识点上。不要奇怪,事实就是如此一般来说,大多数公司给出的基础题大概有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. [Luogu4174][NOI2006]最大获益

    luogu sol 一周没摸键盘了回来刷刷水题练练手感 显然,最大化收益可以转化为最小化损失,从而建立最小割模型. 记\(tot=\sum_{i=1}^{m}C_i\),事先假设所有的获益都得到了,那 ...

  2. [HNOI2014]米特运输

    显然知道一个节点就可以推出整棵树 然而直接乘会爆longlong 所以考虑取log 最后排序算众数即可 # include <stdio.h> # include <stdlib.h ...

  3. mysql测试

    数据库效率测试: 1.创建索引: 数据量小(或者空表)的情况下创建索引: 有一定数据量情况下(100000条数据)创建索引: 在有一定数据量的情况下,数据库会为现有数据添加索引,此时,创建索引的工作量 ...

  4. Spring AOP梳理

    一.Srping AOP AOP(Aspect Oriented Programming)解释为面向切面编程,何为切面,用刀把一块面包切成两半,刀切下去形成的面就叫切面,那么面向切面的就是形成切面的这 ...

  5. android使用JSON数据和服务器进行交互

    //点击按钮发送反馈信息给服务端,成功则进入优惠券界面 Button upload = (Button) findViewById(R.id.upload); final String finalLa ...

  6. [解决]Linux Tomcat启动慢--Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [236,325] milliseconds

    一.背景 今天部署项目到tomcat,执行./startup.sh命令之后,访问项目迟迟加载不出来,查看日志又没报错(其实是我粗心了,当时tomcat日志还没打印完),一开始怀疑是阿里云主机出现问题, ...

  7. 查看 SELinux状态|关闭SELinux

    查看SELinux状态: 1./usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态 SELinux status:         ...

  8. 解决iar试调时程序无法进入主函数的问题

    尼玛,我TM当时核心板上还接着摄像头,啊啊啊啊,必须吧摄像头关了,不然,k60初始化时会检测io口状态,状态不正确当然无法进入主函.摄像头上电即输出数据,会对单片机上电检测造成干扰.

  9. Devstack 安装OpenStack Pike版本(单机环境)

    问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...

  10. 【python学习笔记】10.充电时刻

    [python学习笔记]10.充电时刻 任何python都可以作为模块倒入 *.pyc:平台无关的经过编译的的python文件, 模块在第一次导入到程序中时被执行,包括定义类,函数,变量,执行语句 可 ...