`
nakata_yf
  • 浏览: 112264 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java -verbose参数来观察Java的运行信息

阅读更多
(引用一下)
我的原意是指不熟悉底层机制未必就写不出来高效的Java代码。实际上Java这种基于虚拟机的语言本身就是通过层层类调用来完成操作的,因此应用层代码本身多几个new,少几个new,多用几个Exception,少用几个Exception,多几层少几层,并不会对性能造成什么影响。我们可以通过很简单的使用java -verbose参数来观察Java的运行信息,即使最简单的Hello World也要经过非常多层类堆栈调用,那么应用层代码往往不会成为瓶颈。

所以我的观点是:

Java应用程序的性能不取决于你多用了一些分层设计,多用了new,多用了Exception层次;如果你的Java应用程序有性能问题,那么问题的根源也不在你多用了一些分层设计,多用了new,多用了Exception层次
分享到:
评论

相关推荐

    程序员学习Java的一剂良药.

    - **使用`verbose`选项**:利用JDK提供的`-verbose`选项(例如`java -verbose`或`javac -verbose`),观察程序运行时JVM加载类的信息,加深对程序运行机制的理解。 - **构建个人代码库**:将自己编写的破坏性例程...

    java学习心得

    在学习这一概念时,可以通过在命令行运行Java程序,并添加`-verbose`参数来观察类加载的过程。例如,运行`java -verbose *.class`可以看到程序加载的类文件顺序,只有当我们实际使用到某个类的实例时,该类才会被...

    java杂谈-一个计算机专业学生几年的编程经验汇总谈实用.pdf

    作者建议通过在命令行中使用`java -verbose *.class`参数来观察类的加载过程。这样可以清晰地看到类文件被加载的顺序,只有当类的实例真正被创建时,对应的类文件才会被加载。这有助于理解Java如何在运行时管理类的...

    java学习经验谈.pdf

    当你在命令行窗口运行Java程序时,通过添加`-verbose`参数,如`java -verbose *.class`,可以观察到类加载的过程。这样你会清晰地看到哪些类文件被加载,以及加载的顺序。Java遵循“按需加载”的原则,只有当类的...

    java杂谈-一个计算机专业学生几年的编程经验汇总谈.pdf

    当你在命令行中运行Java程序时,可以使用`java -verbose *.class`参数,这将显示程序加载的所有类文件,让你能够观察到类加载的顺序。只有当类的实例真正被创建时,对应的类文件才会被加载,这也是Java实现“按需...

    Java学习杂谈1-12

    通过在命令行中使用`java -verbose *.class`参数,可以观察到类加载的过程,这有助于理解这一机制。 2. **类加载器(ClassLoader)**: 类加载器负责查找并加载类文件。Java的类加载器分为三个层次:Bootstrap ...

    JAVA的编程经验.pdf

    要深入了解这一机制,可以使用命令行参数`java -verbose *.class`来观察类的加载顺序。当声明一个类但未实例化时,JVM不会加载该类,只有在实际创建对象时才会执行加载。 寻找Class文件的原理涉及Java的类加载器...

    基于Java的内存泄露分析及定位

    Java内存管理是一个关键的议题,尤其对于开发大型和长期运行的应用程序来说,内存泄漏可能导致性能下降,甚至引发严重的系统故障。内存泄漏通常发生在程序错误地管理内存,导致某些不再使用的对象无法被垃圾收集器...

    java学习杂谈

    Java开发者在安装Java开发工具包(JDK)时,往往会面临是否同时安装Java运行时环境(JRE)的选择。尽管多数情况下二者会一同安装,但了解它们之间的差异对于深入Java编程至关重要。 - **JRE(Java Runtime ...

    jvm调优,java 虚拟机优化

    - `-verbose:gc`:开启GC信息的输出。 - `-XX:PrintGCDetails`:打印详细的GC信息,包括哪些对象被回收,回收了多少内存等。 - `-XX:PrintGCDateStamps`:在GC日志中添加时间戳,便于分析GC发生的时间规律。 - `-...

    java编程经验

    通过在命令行运行Java程序时添加`-verbose`参数,我们可以观察到类加载的过程,这有助于理解哪些类在何时被加载。例如,即使声明了一个类,但如果没有实例化,该类也不会被加载,只有在实际使用到类的实例时,JVM才...

    Java编程经验

    1. **命令行参数**:通过在命令行窗口运行Java程序时添加`-verbose:class`参数,可以观察到类文件被加载的过程。 ```shell java -verbose:class *.class ``` 这条命令将显示JVM加载的所有类文件,包括JDK自带的...

    语言程序设计资料:Java基础和J2ee的SSH2.doc

    通过在命令行运行Java程序时添加`-verbose`参数,可以观察到类文件的加载过程,从而更好地理解这一机制。 【Java类加载器】 Java的类加载器分为三个级别:Bootstrap ClassLoader、Extension ClassLoader和...

    Java Learning Path 方法篇

    通过改变`main`的访问修饰符、删除`static`关键字、更改参数类型或名称,初学者可以观察错误,理解这些元素的重要性。此外,破坏和重构代码是学习过程中的重要步骤,如探索`static`, `public`, `private`, `...

    JAVA牛人几年的编程经验汇总.doc

    为了体验这一机制,你可以通过在命令行中运行Java程序,并添加`-verbose *.class`参数,这将显示JVM加载的所有类文件,从而让你看到类加载的顺序。 接下来,我们讨论查找class文件的原理。Java程序的运行离不开...

    java杂谈

    通过在命令行窗口运行Java程序时添加`-verbose:class`参数,可以观察到类的加载过程。当程序运行时,Java虚拟机(JVM)会根据程序的实际需求,按顺序加载所需的类文件。值得注意的是,即使一个类被声明,如果没有被...

Global site tag (gtag.js) - Google Analytics