上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 24 下一页
摘要: 进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程和线程的区别在于:简而言之,一个程序至少有一个进程,一个进程至少有一个线程. 线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看 阅读全文
posted @ 2012-06-21 18:14 cateatmycode 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 最近看《REST in Practice》, 发现 HTTP 如此之多的状态码都有各自的含义,要准确使用并不难,但现实当中很少人能够做得到。大多数人熟悉的状态码就那几个,平时也不会去阅读 RFC 2616,结果反复使用的也就是那几个状态码。其实很多 REST 中可能遇到的情况,在 HTTP 状态码中都已经有考虑到,不需要自己去发明新的状态码,也不需要在 header 或者 body 自定义错误信息。在说状态码之前,首先建议大家还是先阅读一下 RFC 2616 中的相关章节,看看已有的状态码描述都是什么。我相信有部分状态码是你看了描述也不知道用来干什么的,这时候就需要有更具体的例子来告诉你怎么用 阅读全文
posted @ 2012-06-19 16:04 cateatmycode 阅读(281) 评论(0) 推荐(0) 编辑
摘要: Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的。 Html.RenderPartial是直接将用户控件嵌入到界面上:<%Html.RenderPartial("LogOnUserControl");%>或<%Html.RenderPartial("~/Areas/Comm/Views/Shared/LogOnUserControl.ascx");%>注意:用第一种方法时,用户控件必须放在调用者同一目录下,也可以放在View/Shared中。Html.RenderAc 阅读全文
posted @ 2012-06-15 12:48 cateatmycode 阅读(213) 评论(0) 推荐(0) 编辑
摘要: Convert.ToInt32、int.Parse(Int32.Parse)、int.TryParse、(int) 四者都可以解释为将类型转换为 int,那它们的区别是什么呢?Convert.ToInt32 与 int.Parse 较为类似,实际上 Convert.ToInt32 内部调用了 int.Parse:Convert.ToInt32 参数为 null 时,返回 0; int.Parse 参数为 null 时,抛出异常。 Convert.ToInt32 参数为 "" 时,抛出异常; int.Parse 参数为 "" 时,抛出异常。 Convert 阅读全文
posted @ 2012-06-14 21:31 cateatmycode 阅读(543) 评论(0) 推荐(1) 编辑
摘要: jdk1.5引入了自动装箱(autoboxing)与自动拆箱(unboxing),这方便了集合类以及一些方法的调用,同时也使初学者对其感到非常之困惑。在此,我们来揭开其神秘的面纱。首先,需要厘清一些概念:1、Integer是一个类,用Integer声明一个变量其是一个对象类型(或者说引用类型);int是基本类型,用int声明的变量是非对象类型,即不能在其上调用方法。2、“==”作用于对象上的时候,其比较的是对象的引用本身的值(或者说对象的地址更容易理解),而作用于基本类型的时候比较的就是基本类型的值。接下来看一段代码:public class Test { public static v... 阅读全文
posted @ 2012-06-12 22:35 cateatmycode 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 1. 委托Delegate C#中的Delegate对应于C中的指针,但是又有所不同C中的指针既可以指向方法,又可以指向变量,并且可以进行类型转换,C中的指针实际上就是内存地址变量,他是可以直接操作内存的,通过内存地址直接访问变量,直接调用方法。 而C#中的Delegate是强类型的,也就是说在声明委托时就已经指定了该变量只能指向具有特定参数,以及返回值的方法。 使用delegate就可以直接建立任何名称的委托类型,当进行系统编译时,系统就会自动生成此类型。您可以使用delegate void MyDelegate()方式建立一个委托类,并使用ILDASM.exe观察其成员。由ILDASM.e 阅读全文
posted @ 2012-06-12 22:17 cateatmycode 阅读(397) 评论(0) 推荐(0) 编辑
摘要: override->重写(=覆盖)、overload->重载、polymorphism -> 多态override是重写(覆盖)了一个方法,以实现不同的功能。一般是用于子类在继承父类时,重写(重新实现)父类中的方法。重写(覆盖)的规则: 1、重写方法的参数列表必须完全与被重写的方法的相同,否则不能称其为重写而是重载. 2、重写方法的访问修饰符一定要大于被重写方法的访问修饰符(public>protected>default>private)。 3、重写的方法的返回值必须和被重写的方法的返回一致; 4、重写的方法所抛出的异常必须和被重写方法的所抛出的异常一致, 阅读全文
posted @ 2012-06-08 18:34 cateatmycode 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 0.Java 中多线程同步是什么?在多线程程序下,同步能控制对共享资源的访问。如果没有同步,当一个 Java 线程在修改一个共享变量时,另外一个线程正在使用或者更新同一个变量,这样容易导致程序出现错误的结果。1.解释实现多线程的几种方法?一 Java 线程可以实现 Runnable 接口或者继承 Thread 类来实现,当你打算多重继承时,优先选择实现 Runnable。2.Thread.start ()与 Thread.run ()有什么区别?Thread.start ()方法(native)启动线程,使之进入就绪状态,当 cpu 分配时间该线程时,由 JVM 调度执行 run ()方法。3 阅读全文
posted @ 2012-06-01 02:53 cateatmycode 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 1.切面(aspect):要实现的交叉功能,是系统模块化的一个切面或领域。如日志记录。 2.连接点:应用程序执行过程中插入切面的地点,可以是方法调用,异常抛出,或者要修改的 字段。 3.通知:切面的实际实现,他通知系统新的行为。如在日志通知包含了实 现日志功能的代码,如向日志文件写日志。通知在连接点插入到应用系统中。 4.切入点:定义了通知应该应用在哪些连接点,通知可以应用到AOP框架支持的任何连接点。 5.引入:为类添加新方法和属性。 6.目标对象:被通知的对象。既可以是你编写的类也可以是第三方类。 7.代理:将通知应用到目标对象... 阅读全文
posted @ 2012-06-01 02:46 cateatmycode 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 在博客园潜水好久了,今天兴致高昂的想写一篇博客,写的内容就是最近刚刚弄懂的关于位运算的题目。可能对那些老鸟老说这些是在基础不过的东西了,但是我相信还是有很多的博客需要了解并掌握这个基础的。做题目前首先需要掌握的知识:~ 取反运算符,如果运算位为1取反后则变为0,如果运算为为0取反后则为1& 与运算符,当运算的两个数同时为1时,则与运算的结果才为1,否则为0| 或运算符,当运算的两个数只要有一个1时,则或运算的结果为1,否则为0.^ 异或运算符,当两个运算位不同时为1,相同时是0>> 右移运算符<< 左移运算符在内存中的运算都是以补码的形式存在的。正数的原码、反码 阅读全文
posted @ 2012-05-31 22:09 cateatmycode 阅读(210) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 24 下一页