public static final String BATCH_MODE_FLAG = "-b";

//批处理模式标记,final:终态,不可变化

public static final String RANGE_DELIMETER = ":";

//范围分隔符,用冒号

public static final String RESET_METHOD_NAME = "reset";

//重置方法名称

private static List<Class<?>> resetList = new ArrayList<Class<?>>();

//类名列表,在批次处理期间重置

System.exit(-1);

//暂停Java虚拟机

java.util.Locale.setDefault(java.util.Locale.US);

//为Java虚拟机实例设置默认语言环境:US(美国)。

//参数类型为 Locale 的 java.util 中的方法:java.util.Locale.setDefault

//声明为 Locale 的 java.util 中的字段java.util.Locale.US(用于表示国家/地区的有用常量)

if (args.length > 0) {

//与public static void main(String[] args) ,所以args.length 表示传入参数的个数

if (args[0].equals(BATCH_MODE_FLAG)) {
    batchMode = true;

//传入的第一个参数若为“-b”,则运行方式为批处理

int firstConfIndex = 0;

//与传入参数个数相关:个数为1,赋值1;否则赋值2

int nrofRuns[] = {0,1};

//二元数组

nrofRuns = parseNrofRuns(args[1]);

//private static int[] parseNrofRuns(String arg)

//第二个参数是二元数组

int guiIndex = 0;

guiIndex = Integer.parseInt(args[0]);

//第一个参数变为十进制,对应查错:NumberFormatException

String confFiles[];

confFiles = args;

//传入所有参数进入记录

initSettings(confFiles, firstConfIndex);

//private static void initSettings(String[] confFiles, int firstIndex)

//初始化相应的设置文件

long startTime = System.currentTimeMillis();

//系统产生一个当前的毫秒时间赋值给变量

Settings.setRunIndex(i)/(guiIndex);

//设置

resetForNextRun();

//public static void registerForReset(String className)

//下次运行重置
new DTNSimTextUI().start();

//开始

String.format("%.2f", duration)

//将变量duration的值转换成与"%.2f"同等格式的值

System.err.println("Caught at " + er.getStackTrace()[0]);

//调试异常时进行输出

//获得错误点的堆栈踪迹

Class<?> c = null;

//类列表

c = Class.forName(className);

//装载括号中的类,类似于new,对应查错:ClassNotFoundException

c.getMethod(RESET_METHOD_NAME);

//获取括号中的方法,对应查错:NoSuchMethodException

resetList.add(c);

//重置列表中添加一个新类

for (Class<?> c : resetList) {

//将resetList中的值一次取出赋给c

Method m = c.getMethod(RESET_METHOD_NAME);

m.invoke(null);

//method.invoke(owner, args):执行该Method.invoke方法的参数是执行这个方法的对象owner,和参数数组args,可以这么理解:owner对象中带有参数args的method方法。返回值是Object,也既是该方法的返回值。

//括号内为空值表示忽略该方法(但不是省略)

catch (Exception e) {

e.printStackTrace();

//打印出错误的出错位置及原因

arg.contains(RANGE_DELIMETER)

//传入参数包含范围分隔符

arg.substring(0, arg.indexOf(RANGE_DELIMETER))

//截取字符串中0与arg.indexOf之间的部分

//搜索字符串中的RANGE_DELIMETER(从0位开始)

private static void print(String txt) {

System.out.println(txt);

//打印文本至标准输出

转载于:https://www.cnblogs.com/yinyuyou-ycy/archive/2012/03/23/2413744.html

DTNSim.java注释摘要(学习性质,有错漏的可能,红色为不明确部分)相关推荐

  1. java基础知识学习小总结(一)

    此文转载自:https://blog.csdn.net/weixin_44734093/article/details/109715246 什么是java Java是一门面向对象编程语言,不仅吸收了C ...

  2. (Java零基础学习笔记)第二章 Java中的基本语法

    前言: 大家好! 我是BA unravel .如果你想和我一起学习JAVA,欢迎大家一起来学习这个世界上最好的语言! 学习目标: 一周掌握 Java 入门知识 学习内容: 1. 搭建 Java 开发环 ...

  3. 20165235 Java第一周学习总结

    (# 20165235 Java第一周学习总结 Ubuntu下git的安装与使用 首先Ubuntu下git的安装,使用sudo apt-get install git下载Ubuntu,下载完成后可以用 ...

  4. java min 函数的使用方法_【Python】Java程序员学习Python(五)— 函数的定义和使用...

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  5. 【Java】Java零基础学习笔记

    文章目录 前言 思维导图 前期准备 卸载JDK 安装JDK Hello,world 可能遇到情况 java程序运行机制 IDEA的安装 java基础部分 基础语法 运算符 包机制 javaDoc文档手 ...

  6. Java零基础学习全套视频笔记

    Java零基础学习全套视频笔记 一.Java基础 1.注释 注释并不会被执行,是给我们写代码的人看的,防止项目结构代码太多忘记代码相关功能. 书写注释是一个非常好的习惯,平时写代码也一定要注意规范. ...

  7. Java基础的学习、知识点总结

    文章目录 Java基础的学习 1. 2.MS-DOS(Microsoft Disk Operating System) 命令提示符(cmd) 3.JRE和DJK 4.环境变量的配置 5.Java程序开 ...

  8. Java web基础学习笔记

    1.xml概述 1.1xml:xml一种数据存储格式,这种数据存储格式在存储数据内容的同时,还能够保存数据之间的关系 1.2xml保存数据的方法:xml利用标签来保存数据的内容,利用标签之间的嵌套关系 ...

  9. Java基础篇 学习笔记

    List item Java基础篇 学习笔记 java基础篇 第1章 计算机.程序和java概述 学习笔记 1.1什么是计算机 简单来说:计算机就是 ' 存储 ' 和 ' 处理 ' 数据的电子设备. ...

最新文章

  1. Wiki动画回顾系列序目录
  2. wget下载阿里云oss的文件报错403
  3. JUC多线程:系统调用、进程、线程的上下文切换
  4. 流传在程序员中的传说,你知道几个?
  5. 单例设计模式–内省和最佳实践
  6. ZooKeeper系列(二)
  7. 非正弦周期电流电路和信号的频谱
  8. SQL 用一个表的数据更新另一张表
  9. DWZ (JUI) 教程 dwz框架 刷新dialog解决方案
  10. 集合点(掌握)-并发
  11. Vulkan Loader 何时加载 ICD 驱动文件
  12. Fileupload
  13. winhex数据恢复linux,winhex数据恢复完整图文教程
  14. GIS 基础知识简介
  15. vos对接移动、电信、联通各种线路
  16. 怎么开启2345加速浏览器的过滤弹窗广告
  17. P1629 邮递员送信-dijkstra+反向建边
  18. 纸壳CMS现已支持自定义扩展字段
  19. 7-3 最长公共前后缀
  20. Cris 玩转大数据系列之任务流神器 Azkaban

热门文章

  1. 测试库的接收到的数据是否完整(jrtplib为列)
  2. TheWorld不能访问Taobao的解决办法
  3. Dropping Balls(小球下落)
  4. 用Python实现排序算法——快速排序
  5. c++学习笔记(5)
  6. c语言中用指针倒序输出,菜鸟求助-如何用指针法将一串字符按单词的倒序输出?如:i love yo...
  7. 动态RAM的集中刷新、分散刷新、异步刷新
  8. linux安装vnc4server,Ubuntu 18.04安装vnc4server
  9. MySQL数据库优化二三事
  10. Mike Novogratz:比特币在未来几年内将继续大幅上涨