原标题:对比Java和C++的不同

以下内容来自于兆隆IT云学院就业部职业素养课程部分内容:

1、 C++或Java中的异常处理机制的简单原理和应用。当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常。违反语义规则包括2种情况。一种是JAVA类库内置的语义检查。例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发NullPointerException。另一种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用throw关键字引发异常。所有的异常都是java.lang.Thowable的子类。

2. Java的接口和C++的虚类的相同和不同处。由于Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是public static,所有方法默认情况下是public.一个类可以实现多个接口。

3. 垃圾回收的优点和原理。并考虑2种回收机制。Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。

4. 请说出你所知道的线程同步的方法。wait():使一个线程处于等待状态,并且释放所持有的对象的lock。sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉InterruptedException异常。notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且不是按优先级。Allnotity():唤醒所有处入等待状态的线程,注意并不是给所有唤醒线程一个对象的锁,而是让它们竞争。

6. Error与Exception有什么区别?Error表示系统级的错误和程序不必处理的异常,Exception表示需要捕捉或者需要程序进行处理的异常。

7. 在java中一个类被声明为final类型,表示了什么意思?

表示该类不能被继承,是顶级类。

9. heap和stack有什么区别。栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。堆是栈的一个组成元素

10.写一个方法,实现字符串的反转,如:输入abc,输出cba

public static String reverse(String s){int length=s.length();StringBuffer result=new StringBuffer(length);for(int i=length-1;i>=0;i--)result.append(s.charAt(i));return result.toString();}返回搜狐,查看更多

责任编辑:

对比java_对比Java和C++的不同相关推荐

  1. java和python的比较-如何对比Python和Java,只需三分钟告诉你!

    原标题:如何对比Python和Java,只需三分钟告诉你! Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手.但是对于初学者来说,非常困惑,因为时间和精力 ...

  2. 富文本对比算法的java实现源码,实现类似word修订记录功能

    富文本对比算法的java实现 文本比较算法利用了两种比较算法,Needleman/Wunsch算法以及google-diff-match-patch算法,对Needleman/Wunsch进行了些许改 ...

  3. 文件对比8,单线程读,多线程对比,对比进度条,对比结果导出excel文件,已验收

    文件对比8,单线程读,多线程对比,对比进度条,对比结果导出excel文件,已验收 介绍 项目结构预览 base util CompareThreadUtil ExcelUtil Md5 ReadFil ...

  4. 华为nova7se乐活版支持鸿蒙,华为nova7se乐活版和nova8se的详细对比参数对比

    原标题:华为nova7se乐活版和nova8se的详细对比参数对比 华为nova7se乐活版和nova8se作为性价比还不错的中端机型,不少小伙伴们不知道该如何选择?那么华为nova7se乐活版和no ...

  5. java锁性能对比_提高Java的锁性能

    java锁性能对比 Plumbr是唯一可以通过解释应用程序性能数据来自动检测Java性能问题根本原因的解决方案. 几个月前,我们在Plumbr中引入了锁定线程检测之后,我们开始收到类似于"嘿 ...

  6. 蚁群算法解决TSP问题(2#JAVA代码+详细注释+对比动态规划【JAVA】)

    第一部分:原理 TSP10cities.txt 1 2066 2333 2 935 1304 3 1270 200 4 1389 700 5 984 2810 6 2253 478 7 949 302 ...

  7. 深度对比 Python 与 Java 的区别(一)

    引入 高中有一好友,在大学期间苦练 Java,各类八股文烂熟于心,最终进入某大厂却在维护 Python 项目. 而本人不思进取,不想背八股文,于是大学期间只是苟着写 Python,然而却最终进入某互联 ...

  8. JSON数据的差异对比工具(Java版)

    目录 背景 说明 源码 源码走读 其他 背景 之前有类似接口diff对比,数据对比的测试需求,涉及到json格式的数据对比,调研了几个大神们分享的代码,选了一个最符合自己需求的研究了下.(可惜原文链接 ...

  9. java 银联支付反馈,微信支付/支付宝支付/银联支付,对比加总结(Java服务端)

    今天来说讲支付.前端 工做到如今,接入过好几个项目的支付,其中涉及到了微信支付.支付宝支付.银联支付.服务器 三种支付的对接感觉其实总体上大同小异.都遵循同一个流程:微信 1).商户APP向商户服务器 ...

最新文章

  1. Tweet信息搜集工具tinfoleak
  2. 远程桌面复制文件到本地磁盘
  3. windows 读写锁 python_用Python实现读写锁
  4. 酷派起诉小米:你竟敢侵我的权?
  5. 【linux】xx is not in the sudoers file 解决办法
  6. 解决多字段联合逻辑校验问题【享学Spring MVC】
  7. 【二进制】Special Numbers
  8. 高德地图-AndroidStadio-No implementation found for long com.autonavi.amap.mapcore.MapCore.nativeNewInsta
  9. 谷歌浏览器android插件开发工具,ARC Welder插件 - 将安卓应用APK安装到谷歌浏览器并运行...
  10. Vegas渲染的时候选什么格式?
  11. Open3DCGAL DTM(数字地形模型)
  12. 根据日期算星座 mysql_php根据日期获取星座
  13. 使用Hyper-V的安卓模拟器-兆懿
  14. “警视”警务情指一体大屏可视化决策系统
  15. Verilog 语法入门知识
  16. Sql - EXISTS 用于子查询
  17. 堆漏洞挖掘——fastbin attack漏洞
  18. custom_setting
  19. spark官网配套的代码数据在哪儿
  20. 三、伊森商城 快速开发 人人开源后台管理 p10

热门文章

  1. 2019余姚培训游记+ZJOJD2划水记
  2. 刺客信条-【设计模式】-软件设计准则
  3. 互联网寒冬与后疫情时代环境下-我们如何避免内卷
  4. PRKC-1024 : Invalid netmask
  5. 学习单元测试 Mockito 一篇文章就够了
  6. cibc app for android,CIBC Mobile Banking
  7. QQ空间排名实战方法
  8. 基于模型的自动化测试工具GraphWalker(一):基本原理
  9. 30岁了,说几句大实话
  10. 事务的四大特性及实现原理