程序设计
zhrmghl
这个作者很懒,什么都没留下…
展开
-
时间一例
一简单例子,与时间及线程有关.目的:在规定时间以后运行某程序. import java.util.*;public class TestCalendar { /** * Method main * * * @param args * */ public static void main(String[] args) { // TODO: 在这添加你的代码 // Time原创 2006-08-22 00:22:00 · 621 阅读 · 1 评论 -
java语言学习环境基本搭建完成
终于让eclipse上的JAVA开发基本可以实现了。在这个过程中,我试了eclipse3.1.1、3.1.2、3.2版本,最后还是锁定在了3.1.1版本上。我的系统平台:SuSE10.1。1、JDK 我选择了jdk1.5.0,安装在/usr/java目录下。 下载地址:https://sdlc1d.sun.com/ECom/EComActionServlet;jsessionid=DF原创 2006-07-08 23:42:00 · 1173 阅读 · 0 评论 -
理解finalize()-析构函数的替代者
by Tim Gooch在许多方面,Java 类似于 C++。Java 的语法非常类似于 C++,Java 有类、方法和数据成员;Java 的类有构造函数; Java 有异常处理。但是,如果你使用过 C++ 会发现 Java 也丢掉一些可能是你熟悉的特性。这些特性之一就是析构函数。取代使用析构函数,Java 支持finalize() 方法。在本文中,我们将描述 finalize() 与转载 2006-07-20 00:06:00 · 586 阅读 · 0 评论 -
StringTokenizer类
API中解释如下:--------------StringTokenizerpublic StringTokenizer(String str, String delim)为指定字符串构造一个 string tokenizer。delim 参数中的字符都是分隔标记的分隔符。分隔符字符本身不作为标记。 注意,如果 delim 为 null,则此构造方法不原创 2006-07-20 19:31:00 · 3159 阅读 · 6 评论 -
对象的创建过程(JAVA编程思想)
假设有一个Dog的类。 1、当首次创建类型为Dog的对象时(构造器可以看成是静态方法),或者Dog类的静态方法/静态字段首次被访问时,java解释器必须查找类路径,以定位.class文件 。 2、然后载入Dog.class,有关静态初始化的所有动作都被执行。因此,静态初始化只在Class对象首次加载的时候进行一次。 3、当用new Dog()创建对象的时候,首先将在堆上为转载 2006-07-16 23:38:00 · 550 阅读 · 0 评论 -
学习笔记(复用类)
1、编译器并不简单地为每一个引用都创建缺省对象,因为若真要那样做,会在许多情况下增加不必要的负担。如果想初始化这些引用,可以在代码中的下列位置进行: (1)在定义对象的地方。这意味着它们总是能够在构造器被调用之前被初始化。 (2)在类的构造器中。 (3)就在正在使用这些对象之前,这种方式称“惰性初始化”。在生成对象不值得及不必每次都生成对象的情况下,这种方式可以减少额外原创 2006-07-22 12:34:00 · 469 阅读 · 0 评论 -
C++中的堆和栈
首先,举个例子: void f() { int* p=new int[5]; } 这条短短的一句话就包含了堆与栈,看到new,我们首先就应该想到,我们分配了一块堆内存,那么指针p呢?他分配的是一块栈内存,所以这句话的意思就是: 在栈内存中存放了一个指向一块堆内存的指针p。在程序会先确定在堆中分配内存的大小,然后调用operator new分配内存,然后返回这块内存的首地址转载 2006-07-21 13:22:00 · 512 阅读 · 0 评论 -
Java中的内存管理
1 内存分配策略 按照编译原理的观点,程序运行时的内存分配有三种策略,分别是静态的,栈式的,和堆式的. 静态存储分配是指在编译时就能确定每个数据目标在运行时刻的存储空间需求,因而在编译时就可以给他们分配固定的内存空间.这种分配策略要求程序代码中不允 许有可变数据结构(比如可变数组)的存在,也不允许有嵌套或者递归的结构出现,因为它们都会导致编译程序无法计算准确的存储空间需求. 栈式存储分转载 2006-07-21 17:50:00 · 521 阅读 · 0 评论 -
构造器的调用顺序
构造器被调用应遵循的程序: 1、在其它任何事物发生之前,将分配给对象的存储空间初始化为二进制的零。 2、调用基类构造器。该步骤不断递归,首先是构造这种层次结构的根,然后是下一层导出类,直到最低层的导出类。 3、按声明顺序调用成员的初始化方法。 4、调用导出类构造器的主体。 一例如下:class aa{ aa(){ System.out.pr原创 2006-07-27 17:54:00 · 572 阅读 · 0 评论 -
RandomAccessFile一例
package zxx4;import java.io.*;//首先定义一个类Employee,包含对字段格式的要求。class Employee { public String name=null; public int age=0; public static final int LEN= 8; Employee(String name,int age){原创 2006-08-23 12:39:00 · 574 阅读 · 0 评论 -
freebsd下的JAVA安装
发现在freebsd6.2下的JDK不太好装。 进入cd /usr/ports/java/jdk15 &&make install clean,由于java的license的问题,只好根据提示下载若干个包,有bsd-jdk15-patches-7.tar.bz2、diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2、jce_p原创 2007-12-26 21:49:00 · 958 阅读 · 0 评论 -
shell下加法一例
#!/bin/bashn=1;echo -n "$n "let "n = $n + 1"echo -n "$n ": $((n = $n + 1))echo -n "$n "(( n = n +1 ))echo -n "$n ": $[ n = $n +1 ]echo -n "$n "n=$[ $n + 1 ]echo -n "$n "let "n++"echo -n "$n "(( n++ ))转载 2006-10-23 12:27:00 · 10532 阅读 · 0 评论 -
shell--位置参数
$0, $1, $2,等等... 位置参数,从命令行传递给脚本,或者是传递给函数.或者赋职给一个变量. $# 命令行或者是位置参数的个数. $* 所有的位置参数,被作为一个单词. 注意:"$*"必须被""引用. $@ 与$*同义,但是每个参数都转载 2006-10-23 14:10:00 · 462 阅读 · 0 评论 -
Java语言编码规范
1 介绍(Introduction) 1.1为什么要有编码规范 编码规范对于程序员而言尤为重要,有以下几个原因: - 一个软件的生命周期中,80%的花费在转载 2006-08-27 01:02:00 · 544 阅读 · 0 评论 -
java写的获取ftp文件列表
学习过程中,想实现FTP客户端的一些功能,从网上找到一个程序试着调试了一下.import sun.net.ftp.*;import sun.net.*;import java.awt.*;import java.awt.event.*;import java.applet.*;import java.io.*;public class FtpApplet1 extends Applet原创 2006-05-07 18:13:00 · 1975 阅读 · 0 评论 -
实现远程FTP文件与本地(WIN系统)文件同步
学习JAVA也有两个月了,一直想写一个同步程序.程序已经可以实现对FTP上数据的简单同步,只是针对文件名,但是完全是按照原始的思想去写的,还需要进一步的改动.源代码如下:import java.io.*;import java.net.*;import sun.net.*;import sun.net.ftp.*;//此例实现远程FTP服务器与本地(WIN系统)文件同步class原创 2006-05-31 01:00:00 · 2848 阅读 · 1 评论 -
shell下的文件测试操作命令
文件测试操作----------------返回true如果... -e 文件存在-a 文件存在 这个选项的效果与-e相同.但是它已经被弃用了,并且不鼓励使用-f file是一个regular文件(不是目录或者设备文件)-s 文件长度不为0-d 文件是个目录-b 文件原创 2006-10-19 16:12:00 · 79 阅读 · 0 评论 -
Java数据类型间的相互转换
Java数据类型间的相互转换 document.title="Java数据类型间的相互转换 - "+document.title作者:处处 (yanshuaiyu@yahoo.com) Java的数据类型分为三大类,即布尔型、字符型和数值型,而其中数值型又分为整型和浮点型;相对于数据类型,Java的变量类型为布尔型boolean;字符型char;整型byte、short、int、lo转载 2006-06-04 14:08:00 · 520 阅读 · 0 评论 -
shell下数字和字符串比较操作命令
二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别. 整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如:if [ "$a" -ne "$b" ] -gt 大于,如:if [ "$a" -gt "$b" ] -ge 大于等于,如:if [ "$a" -ge "$b" ] -lt转载 2006-10-22 10:34:00 · 21499 阅读 · 0 评论 -
shell下混合比较操作命令
混合比较 -a 逻辑与 exp1 -a exp2 如果exp1和exp2都为true的话,这个表达式将返回true -o 逻辑或 exp1 -o exp2 如果exp1和exp2中有一个为true的话,那么这个表达式就返回true 这与Bash的比较操作符&&和||很相像.在[[]]中使用它.转载 2006-10-22 11:30:00 · 762 阅读 · 0 评论 -
shell下位和逻辑操作
位操作符. 位操作符在shell脚本中极少使用.它们最主要的用途看起来就是操作和test从sockets中 读出的变量."Bit flipping"与编译语言的联系很紧密,比如c/c++,在这种语言中它可以 运行得足够快.(原文有处on the fly,我查了一下,好像是没事干的意思,没理解) let "var >> 右移1位(转载 2006-10-23 12:49:00 · 1519 阅读 · 0 评论 -
shell下数字常量的处理
#!/bin/bash# numbers.sh: 数字常量的几种不同的表示法# 10进制: 默认let "dec = 32"echo "decimal number = $dec" # 32# 一切都很正常# 8进制: 以0(零)开头 let "oct = 032"echo "octal number = $oct"转载 2006-10-23 13:10:00 · 902 阅读 · 0 评论 -
shell--限定时间读取变量
#!/bin/bashTIMELIMIT=4read -t $TIMELIMIT variableechoif [ -z "$variable" ]then echo "Timed out,variable still unset."else echo "variable = $variable"fiexit 0转载 2006-10-23 13:59:00 · 439 阅读 · 0 评论 -
ubuntu下与C/C++开发有关软件包
C/C++编译器和基本库和常用工具(gcc系列)build-essential软件包安装了gcc,g++编译器以及相关的标准库,同时还安装了gnu make和dpkg-dev.TK/GNOME开发环境(库、IDE、工具)如果只想进行GTK开发(软件包)基本开发环境:libgtk2.0-dev文档:libgtk2.0-docdemos(例子):gtk2-examplesGTKmm(C++版本的GTK,这里假设版本是2.4,具体软件包根据版本不同而不同):libgtkmm-2.4-devGTKmm文档:gtkm转载 2010-06-11 17:01:00 · 367 阅读 · 0 评论