了解程序内部运行时的状态

阅读源码的方式:任何一个程序只有处于运行状态时,才能突显出其内在的价值。应该从程序运行角度来看问题,而不是死板地对着源代码本身。

日志输出和调试源码是学习框架运行机制的最好方法。

调试源码:加入jar文件到项目的CLASSPATH中,为加入到CLASSPATH中的这些jar文件附上其所对应的源代码。右键单击jar文件,选择Properties选项卡,弹出jar文件的属性选项框,选择选项卡左侧的“Java Source Attachment”选项,点击输入框右侧的按钮,指定相应的源代码所在的目录或者源代码所在的jar文件(ZIP文件),点击OK按钮,Library文件就被附上了相应的源代码(此时,我们会发现jar文件形式的源代码组织形式在管理上的方便性,我们甚至可以把源代码文件存放到Workspace的某个Repository目录后被所有的Library文件引用)。

在Library文件被附上源代码之后,展开Library文件,并双击其中的class文件,就能看到class文件所对应的源码。利用Debug模式就可以进行源码调试了。

时间: 2024-10-11 06:19:17

了解程序内部运行时的状态的相关文章

【vc】1_Windows程序内部运行机制

创建一个Win32应用程序步骤: 1.编写WinMain函数; 2.创建窗口(步骤如下): a.设计(一个)窗口类(WNDCLASS) b.注册(该)窗口类. c.创建窗口. d.显示并更新窗口. 3.编写消息循环. 4.编写窗口过程函数. 1 //WinMain.cpp 2 #include <windows.h> 3 #include <stdio.h> 4 5 LRESULT CALLBACK WinAzeProc( 6 HWND hwnd, // handle to win

WWindows程序内部运行机制

Windows程序内部运行机制 ü      关键概念 1.句柄 句柄是整个Windows编程的基础.一个句柄是指使用的一个唯一的整数值,即一个4字节(64位程序中为8字节)长的数值,来标识应用程序中的不同对象和同类中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等. 2.消息与消息队列 windows程序设计是种事件驱动方式的程序设计,主要基于消息的.例如,当用户在窗口中华图时,按下鼠标左键,此时os会感知到这一事件,于是将此事件包装成一个消息,投递到应用程序的消息队

MFC第一节-windows程序内部运行机制

一.窗口 设计窗口类时: 1 typedef struct _WNDCLASS{ 2 UINT style; //如水平.垂直变化是否重绘,禁用Close,检测双击 3 WNDPROC lpfnWndProc;//窗口过程函数句柄 4 int cbClsExtra;//类附加内存 5 int cbWndExtra;//窗口附加内存 6 HANDLE hInstance;//实例句柄 7 HANDLE hIcon;//图标 8 HCURSOR hCursor;//光标 9 HBRUSH hbrBa

Windows程序内部运行机制

Windows程序内部运行机制 一.        API与SDK Windows操作系统提供了各种各样的函数,以方便我们开发Windows应用程序,这些函数是Windows操作系统提供给应用程序编程的接口(Application Programming Interface),简称为API函数.我们在编写Windows程序时所说的API函数,就是指系统提供的函数,所有主要的Windows函数都在Windows.h头文件中进行了说明. SDK的全称是Software Development Kit

第一章 Windows程序内部运行机制(4)WinMain函数

WinMain函数相当于main函数,作为Windows程序的入口函数.当WinMain结束或返回时,Windows程序结束. 一个win32应用程序,该程序创建一个窗口并在窗口中响应键盘与鼠标消息,程序的实现步骤为: 1.WinMain函数的定义:2.创建一个窗口:3.进行消息循环:4.编写窗口过程 WinMain函数的定义: int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, in

4,原型模式(Prototype Pattern)实际上就是动态抽取当前对象运行时的状态。

原型模式(Prototype Pattern)  实际上就是动态抽取当前对象运行时的状态. Prototype模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例.使用Prototype模式创建的实例,具有与原型一样的数据. 1)由原型对象自身创建目标对象.也就是说,对象创建这一动作发自原型对象本身. 2)目标对象是原型对象的一个克隆.也就是说,通过Prototype模式创建的对象,不仅仅与原型对象具有相同的结构,还与原型对象具有相同的值. 3)根据对象克隆深度层次的不同,有浅度克

内存的划分 &amp; 程序代码运行时内存工作流程

内存的划分: 1,寄存器. 2,本地方法区. 3,方法区. 4,栈内存. 存储的都是局部变量. 而且变量所属的作用域一旦结束,该变量就自动释放. 5,堆内存. 存储是数组和对象(其实数组就是对象) ,凡是new建立的都在堆中. 特点: 1)每一个实体都有首地址值. 2)堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同.整数是0,小数0.0或者0.0f,boolean类型是false,char类型是 '\u0000',引用数据类型是NULL 3)垃圾回收机制. 全局变量和局部变量的区别:

再理解Windows程序内部运行机制

参照孙鑫<VC++深入详解> 创建Win32程序的步骤: 1. 编写WinMain函数 2. 设计窗口类(WNDCLASS) 3. 注册窗口类 4. 创建窗口 5. 显示并更新窗口(ShowWindow(hwnd,SW_SHOWNORMAL);UpdateWindow(hwnd);) 6. 消息循环(不断地从消息队列中取出消息,并进行响应) 7. 窗口过程函数(处理发送给窗口的消息) 测试代码如下(在VS2010编译通过): #include <stdafx.h> #include

[快手(AAuto)学习笔记]如何让程序在运行时请求管理员权限(UAC)

作者:ffsystem 作为(糟糕的)程序猿,习惯写代码解决一些简单事务.正常用批处理就能解决大部分工作,复杂一点用AutoIt 3. 有时候要分发给别人,就需要一个界面.外行你程序写得如何他看不懂,也不想搞懂.他只看你界面是否花哨,来判断你行不行.没办法只是个看脸的时代,只好给程序整整容. 但是简单的事情,上VS.用.net:或者用java就太无趣了,而且那玩意整好看一点也麻烦. AutoIt3很好用,但界面,但比较传统,找到一个国产的程序,快手AAuto,好像既轻量级.又能html给程序整容