编程技巧 - 文章列表
-
教您一个oracle死锁的检查方法
oracle死锁问题一直困扰着我们,下面就教您一个oracle死锁的检查方法,如果您之前遇到过oracle死锁方面的问题,不妨一看。 一、数据库死锁的现象 程序在执行的过程中,点击确定或保存按钮,程序没有响应,也没有出现报错。 二、oracle死锁的原理 当对于数据库某个表的某一列做更新或删除等操作,执行完毕后该条语句不提交,另一条对于这一列数据做更新操作的语句在执行的时候就会处于等待状态,此时的现象是这条语句一直在执行,但一直没有执行成功,也没%E
-
我现在记得的一个问题是如何写出高效的SQL
因为有人在酷壳里评论里说我给一个女程序员的建议不靠谱,我不服,因为我的工作经历中的一些女程序员都很不错,比那些男程序员都强,所以,我在新浪微博和twitter上征集女程序员的故事和想法,这两天来,我收到了好几封邮件,让我很感动。其中,有一个故事让我回味很久,在脑海里挥之不去,可能是因为她的经历和我很相似,她的想法和我很有共鸣。 本来,我想通过收到的这些故事然后编辑成一篇关于女程序员的文章,但是我觉得这个故事已经足够好了,任何的编辑都是对这个故事的不尊重,所以,我原封不动,一字不改地把这个故事转到这里。我把一些我认为精彩的地方加了粗。 当然,我还是会再写一
-
也就没有继续运行程序的必要了
在Java中有两类线程:用户线程 (User Thread)、守护线程 (Daemon Thread)。所谓守护线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。用户线程和守护线程两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果用户线程已经全部退出运行了,只剩下守护线程存在了,虚拟机也就退出了。 因为没有了被守护者,守护线程也就
-
JAVA中对同一问题分别使用内部类与匿名内部类实现
JAVA中对同一问题分别使用内部类与匿名内部类实现,基于轻量级组件Swing中JComboBox组件来举例说明,希望能够有助于深入理解内部类与匿名内部类的区别以及其使用。packagecom.han;importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;/***设计了一个Swing窗体,其中包括了JComboBox组件(下拉列表框),*在下面的代码中运用了内部类的手段。*@authorHAN**/@SuppressWarnings(\\\"serial\\\")publicclassSwingJC
-
系统变量区域或用户变量区域
直接在环境变量中加上 :JDK安装路径名/bin (也可以先设JAVA_HOME然后设设JAVA_HOME/bin,但必须是在同一区域中进行设置,系统变量区域或用户变量区域,否则设置的JAVA_HOME不会生效)。使用CMD(肯定是Windows而且我用的是法语操作系统) :若代码首行没有package ...声明且代码内没有中文字符,则直接cd进入代码所在目录进行javac filename.java,然后java filename就OK了.若代码首行有package ...声明,例如package com.han;,则一样的进入代码所在目录进行jav
-
如果设计和版权都为别人所有
刚开始接触开发,你也许会有些迷茫,不知道从哪里开始,这个领域实在是有很多知识要学习。比如你可能会问自己“我应该学哪种编程语言?”“我是否在学习后端的时候需要去了解下前端?”等等。以下10个建议希望能帮助你尽早做出选择。 1. 确定想掌握的技能 作为一个初学开发的人,你真正需要的是只专注于某一方面。了解很多语言确实有用,但精通其中一种才是你的优势所在。虽然精通很多语言也并非不可能,但对初学者来说,这是需要时间的。因此,你需要做的是集中精力学习一种技能,并努力成为这一领域的专家。你可以从PHP、Ruby on Rails、ASP.net和C#中的某一种开始,
-
对单个文件和任意级联文件夹进行压缩和解压
程序实现了ZIP压缩。共分为2部分 : 压缩(compression)与解压(decompression) 大致功能包括用了多态,递归等JAVA核心技术,可以对单个文件和任意级联文件夹进行压缩和解压。 需在代码中自定义源输入路径和目标输出路径。 view plaincopy to clipboardprint?1.package com.han; 2.import java.io.*; 3.import java.util.zip.*; 4. 5./** 6. * 程序实现了ZIP压缩。共分为2部分 : 7. * 压缩(compression)与解压(d
-
这也是最常见的产生Class对象的方法
Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识。这项信息纪录了每个对象所属的类。虚拟机通常使用运行时类型信息选准正确方法去执行,用来保存这些类型信息的类是Class类。Class类封装一个对象和接口运行时的状态,当装载类时,Class类型的对象自动创建。 Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的,因此不能显式地声明一个Class对象。 虚拟机为每种类型管理一个独一无二的Class对象。也就是说,每个类(型)都有一个Cl
-
实现一个二十四点的算法
二十四点:任意给出四个数字,通过加减乘除四则运算得出值为24的算法有多少种。我实现了一个二十四点的算法为对数字和运算符分别两次全排列。详细代码如下: package myMath.ershisidian; import itmao.Iershidian; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Set; /** * ITMAOO * 2011.12.23 * **/ public class Main { in
-
而在以后的引用中只能读取
final——修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。 finally——异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话