原创 Java核心技術很優美的代碼2 "萬能的"toString

/** @version 1.11 2004-02-21 @author Cay Horstmann */ import java.lang.reflect.*; import java.util.*; import jav

原创 Proxy代理的應用

//: typeinfo/SimpleDynamicProxy.java import java.lang.reflect.*; class DynamicProxyHandler implements InvocationHandle

原创 Java核心技術讀書筆記

1.  Java沒有任何unsigned類型 2.  float類型的數值後面有一個後綴F,沒有後綴F的浮點數默認爲double類型 3.  if(x = 0)在C++中可以編譯通過,其結果總爲false,而在Java中,整數表達式x =

原创 類初始化和類的加載問題

JVM進程終止: 1.程序運行到最後正常終止 2.程序運行到使用System.exit()或Runtime.getRuntime().exit() 3.程序執行過程中遇到未捕獲的異常或錯誤而結束 4.程序所在的平坦強行終止JVM進程 看下

原创 『Linux學習』基本命令篇(六)

1.網絡管理: 1)/etc/hosts [root@localhost ~]# cat /etc/hosts # Do not remove the following line, or various programs # that

原创 『Linux學習』基本命令篇(五)

1.系統初始化: 1)系統初始化時根據MBR來識別硬盤設備的。 2)在MBR中包括用來載入操作系統的可執行代碼。這個可執行代碼就是MBR中的前446個字節的boot loader程序,引導加載程序。 3)在boot leader之後的64

原创 『Linux學習』基本命令篇(三)

1.檢查磁盤空間 1)df   顯示文件系統中的磁盤使用和空閒區的數量  -h選項以人類容易理解的方式列出每個文件系統的使用情況  -i是i節點的使用情況 2)du  顯示磁盤的使用總量 以k字節爲單位顯示文件系統磁盤空間的使用的總量

原创 『Linux學習』基本命令篇(四)

1.內核模塊的功能: 1)提供計算機外圍設備的驅動程序。 2)提供一些其他的文件系統的支持。 所有的內核模塊都在/lib/modules目錄中。 使用lsmod命令列出目前已經載入的模塊。 modprobe命令來臨時載入某個模塊。(可以同

原创 『Linux學習』基本命令篇(二)

1.注意  \  的轉義 2.Linux中的單引號和雙引號 1)單引號('‘):禁止所有命令行的擴展功能 2)雙引號(“”):禁止所有命令行擴展功能,但是以下的符號除外。      美元$   倒引號 (` ) 反斜線 ( \ ) 感嘆號

原创 『Linux學習』基本命令篇(一)

主要用於RedHat,其他的Linux命令可能不同。 1.使用telnet連接Linux: [root@localhost ~]# chkconfig telnet --list telnet on 如果關閉時,打開的

原创 多態的實現原理

從Java編程思想上看來的,記下來爲以後的儲備基本知識點。 當BirdController調用move()時,不需要編寫處理Bird類的具體類型的代碼就可以發生不同的行爲。 面向對象程序設計的最重要的妙決: 編譯器不可能產生傳統意義

原创 用C語言實現Linux命令的cat功能

#include <stdio.h> void file_copy(FILE * file1,FILE * file2) { int c; while((c = getc(file1)) != EOF) { putc(c,f

原创 bitcount函數統計其整數參數的值爲1的二進制位的個數

/* bitcount: count 1 bits in x */ int bitcount(unsigned x) { int b; for (b = 0; x != 0; x >>= 1) if

原创 希爾排序

以前寫過一個希爾排序,不過不是很好理解,並且代碼也很長,這次從C程序設計語言中看到一個比較好理解並且代碼量較少的程序,值得學習一下 //希爾排序 //v[]待排數組,n數組個數 void shell_sort(int v[],int n

原创 蛇形排列 非遞歸

/** * 蛇形排列的算法實現 * * 蛇形排列 * * 輸入4 * 輸出: * 1 2 3 4 * 12 13 14 5 * 11 16 15 6 * 10 9 8 7 *