- 浏览: 211280 次
- 性别:
- 来自: 哈尔滨
文章分类
- 全部博客 (267)
- java.lang (8)
- 问题汇总 (21)
- 异常记录 (20)
- 功能实现 (19)
- 面试总结 (25)
- 技巧总结 (8)
- 常用代码 (4)
- 编程习惯 (3)
- 编码规则 (3)
- java.util (10)
- java.io (1)
- JavaWeb (9)
- MySQL (16)
- SVN (3)
- MyBatis (11)
- Velocity (7)
- 其他知识 (10)
- 人生哲理 (1)
- 人生故事 (1)
- 自我感悟 (1)
- shiro (3)
- 基础知识 (0)
- 问题总结 (1)
- Spring 标签 (1)
- Spring (3)
- 点滴生活 (1)
- DOS (1)
- CAS (4)
- Linux (9)
- Storm (6)
- Shell (1)
- regex (1)
- Collection (4)
- poi (1)
- 经典语句 (1)
- NIO (5)
- concurrent (14)
- RPC (1)
- zookeeper (3)
- 待整理 (2)
- Hadoop (9)
- RabbitMq (2)
- flume (1)
- hive (7)
- hbase (4)
- kafka (1)
- scala (1)
- GC (0)
- java.util.concurrent.atomic (1)
- java.lang.ref (6)
- JVM (2)
- algorithm (1)
- conception (1)
- java key word (1)
- sun.misc (1)
最新评论
问题:System.exit(0)与return的区别
1.try catch finally 若catch中有return ,finally中代码依然可以执行
参考文献:try catch 中添加 return ,fianlly中的代码是否依然会执行?
2.try catch finally 若catch中有System.exit(0),finally中代码不可以执行
Console输出:
catch
3.区别
多线程例子:
4.总结
(1)在main()中的区别:
当用return;返回时,main()并不能立即运行结束,而用System.exit(数值);时,main()将立即无条件的结束
(2)system.exit(0)表示程序正常退出,system.exit(1)表示非正常退出,都没有返回值。return则返回至调用该方法的地方,如果后面还有代码则继续执行
(3)return返回上一层调用;System.exit(n)返回最上一层调用
参考文献:
http://bbs.csdn.net/topics/280057476
http://blog.csdn.net/mmllkkjj/article/details/6149043
1.try catch finally 若catch中有return ,finally中代码依然可以执行
参考文献:try catch 中添加 return ,fianlly中的代码是否依然会执行?
2.try catch finally 若catch中有System.exit(0),finally中代码不可以执行
public static void main(String[] args) { try{ int result = 0/0 ; System.out.println(result); }catch(Exception e){ System.out.println("catch"); System.exit(0); }finally{ System.out.println("finally"); } System.out.println("after finally"); }
Console输出:
catch
3.区别
方法 | return | System.exit(n) |
main() | 不能立即终止JVM运行 | 立即终止JVM运行 |
被调用方法 | 返回方法调用位置,其后的方法可以正常运行 | 终止运行,其后方法不执行 |
多线程例子:
new myThread().start(); if(条件为真) return; //此处的return并不能立即结束main。等待线程myThread //若换成System.exit(数值);则立即无条件地结束。 //其它代码
4.总结
(1)在main()中的区别:
当用return;返回时,main()并不能立即运行结束,而用System.exit(数值);时,main()将立即无条件的结束
(2)system.exit(0)表示程序正常退出,system.exit(1)表示非正常退出,都没有返回值。return则返回至调用该方法的地方,如果后面还有代码则继续执行
(3)return返回上一层调用;System.exit(n)返回最上一层调用
参考文献:
http://bbs.csdn.net/topics/280057476
http://blog.csdn.net/mmllkkjj/article/details/6149043
发表评论
-
京东商城--商城研发部面试
2017-12-01 19:30 5882017年12月01日 笔试题目 1. final fina ... -
海量日志数据,提取出某日访问百度次数最多的那个IP
2017-11-29 21:18 2222问题:一个的日志文件中存放IP地址,按照访问量对IP地址取访问 ... -
输出十进制数字的二进制数的表示
2017-11-03 23:16 1102一、代码如下: public static void m ... -
将数组中的内容随机打乱
2017-10-27 22:45 512问题:斗地主游戏,开局会将纸牌重新打乱,请用数组的随机排序实现 ... -
JVM基础
2017-10-26 22:41 424一、Java 运行时区域 《 ... -
String为什么使用final 修饰
2017-10-25 22:32 970主要是为了”安全性“和”效率“的缘故 1、由于String类 ... -
沐金地面试记录
2017-10-25 22:15 50510.25 下午同事帮忙投递的,约在晚上面试,下班之后赶紧去了 ... -
JD广告部面试经历
2017-10-23 16:46 429同事的同事招聘,于是同事帮忙推荐了一下! 2017年10月1 ... -
编程题目(一)
2017-09-28 22:28 3991.函数:参数为两个字符串a,b ,判断 b 中是否包含 a ... -
值传递与引用传递
2017-05-30 12:25 328一、值传递与引用传递 其实按值还是按引用的区别在于“是否在传 ... -
装箱与拆箱
2016-10-24 22:46 536public class IntegerTest { ... -
可变性与不可变性
2015-06-01 20:55 450String StringBuilder StringBuff ... -
CS架构和BS架构的区别
2015-05-25 08:50 480一、简介 1.C/S结构,即 ... -
HTTP常见响应状态码
2015-05-20 08:26 419问题:程序调试过程中 ... -
JIT的概念
2015-05-19 18:48 707参考文献: http://blog.csdn.net/yan ... -
JDK与JRE与JVM的区别
2015-05-19 18:45 11001.JDK (1)概念 JDK : Java Developm ... -
运行时与编译时
2015-05-17 18:05 538运行时与编译时 博文转载:http://www.import ... -
重载(overloading)与重写(overriding)
2015-05-17 15:50 638问题:重载(overloading)与重写(overridin ... -
==和equals
2015-05-15 20:07 653参考文献: http://www.cnblogs.com/zh ... -
return finally 与 System.exit(n)
2015-05-10 18:00 674问题:System.exit(n);的含义以及作用 说明: ...
相关推荐
System.out.println("#ERROR# Invalid reader index '"+args[0]+"'. Last valid index is " + (terminals.size()-1) ); System.exit(3); // throw new Exception( "Invalid reader index '"+iReader+"'. Last ...
import java.util.*; class MyException extends Exception{ String message; MyException(int age){ message=age+"年龄异常";... System.exit(0); } System.out.println(a.getAge()); } }
本文将详细介绍如何使用`System.IO.File`与`System.IO.FileInfo`中的`OpenText`和`AppendText`方法来读取和写入文本文件,并特别关注如何使用`UTF-8`编码。 #### 二、System.IO.File 和 System.IO.FileInfo ##### ...
1. **谨慎使用System.exit(0)**:一般情况下,不建议使用`System.exit(0)`来强制退出应用程序,因为这可能会导致数据丢失,而且Android系统会管理应用的生命周期,正常情况下应该由系统决定何时销毁应用程序。...
首先获取当前进程的PID(Process ID),然后使用`killProcess()`方法杀死进程,最后使用`System.exit(0)`确保Java虚拟机正常关闭。这种方法虽然直接,但可能会影响其他正在运行的组件和服务。 ```java android.os...
C#做的俄罗斯方块游戏using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Xml; using System.IO; using System.Security....
System.exit(0); default: System.out.println("Invalid choice. Please try again."); } } } } ``` #### 6. 运行与测试 完成上述步骤后,可以在IDEA中运行`Main`类来启动通讯录系统。用户可以根据提示进行...
通常,开发者会尝试使用`finish()`、`System.exit(0)`或`android.os.Process.killProcess(android.os.Process.myPid())`等方法来关闭应用,但这些方法往往只能结束当前活动的Activity,而无法彻底关闭整个应用,因为...
当需要退出时,遍历该列表并调用每个Activity的`finish()`方法来关闭它们,并最终调用`System.exit(0)`来结束进程。 #### 代码详解 ##### SysApplication 类 ```java public class SysApplication extends ...
简单分析了linux下system函数的相关内容,具体内容如下 int __libc_system (const char *line) { ...exit 0) == 0; return do_system (line); } weak_alias (__libc_system,
System.out.println("[7] Exit"); System.out.print("Enter choice [1-7]: "); choice = sc.next().charAt(0); System.out.println(); // process choice by calling helper methods switch(choice) { case ...
如果在try块中执行了System.exit(0)语句,finally语句将不会被执行,因为JVM已经停止了执行。 Java中finally和return的关系实例解析是非常重要的,掌握它们的关系是Java开发者的必备技能。finally语句用于释放资源...
System.exit(0); break; default: System.out.println("无效的选择,请重新输入!"); } } } private static void addStudent(List<Student> students, Scanner scanner) { System.out.print("请输入学生学号:...
在Android中,单纯调用`System.exit(0)`或`android.os.Process.killProcess(android.os.Process.myPid())`并不能确保应用程序中的所有Activity都被完全关闭,尤其是当应用程序中有多个Activity栈存在时。这种情况下...
- 使用`System.exit(0)`可能会导致一些问题,比如未释放资源等。因此,在实际项目中推荐使用`finish()`方法关闭当前Activity。 #### 方法二:点击返回键弹出确认对话框选择退出 这种方法是在用户点击返回键时,弹...
System.exit(0); } } Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub super.handleMessage(msg); isExit = ...
Private Sub NotifyIcon1_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseDoubleClick If (Me.Visible = False) Then Me.Show() ...
宋",Font.PLAIN,15)); panel .add(button); button .setFont(new Font( " 仿宋",Font.PLAIN,15));... System.exit(- 1 ); } new Thread(new Runnable(){ public void run(){ while ( true ){ try { msg = reader
System.exit(0); } else // 注册 if (str.equals("注 册")) { System.out.println("注 册"); } // 注册 else if (str.equals("忘记密码")) { System.out.println("忘记密码"); } else { System.out....
str.getChars(0,str.length(),c,0); if(c[0]>='a'&&c[0]) { c[0]=(char)(c[0]-32); } for(int i=1;i<=c.length-1;i++) { if(c[i]==' ') { c[i+1]=(char)(c[i+1]-32); } } str=new ...