原创 Java編程思想__複用類

複用代碼是Java衆多引人注目的功能之一。但要想成爲極具革命性的語言, 僅僅能夠複製代碼並對之加以改變是不夠的,它還必須能夠做更多的事情。  新的類是由現有類的對象所組成,這種方法稱爲 組合。 按照現有類型來創建新類。無需改變現有類的形式

原创 Java編程思想__泛型(四)

邊界處的動作 正是因爲有了擦除,我們發現泛型最令人困惑的方面源自這樣一個事實,即可以表示沒有任何意義的事物。 public class ArrayMaker<T> { private Class<T> tClass;

原创 Java編程思想__訪問權限控制

訪問控制( 或隱藏具體實現 )與最初的實現並不恰當 有關。 Java提供了訪問修飾詞,以供類庫開發人員向客戶端程序員指明那些是可用的,那些是不可用的。訪問權限控制的等級,從最大權限到最小的權限依次爲: public , protected

原创 Java編程思想__泛型(三)

下面是使用模板的C++示例, 你將注意到用於參數化類型的語法十分相似,因爲Java是受C++的啓發。 template<class T> class Manipulator{ T obj; public: Manipu

原创 Java編程思想__泛型(一)

一般的類和方法,只能使用具體的類型,要麼是基本類型,要麼是自定義的類。如果要編寫可以適用於多種類型的代碼,這種刻板的限制對代碼的束縛就會很大。 在面向對象編程語言中,多態是一種泛化機制。 JavaSE5 的重大變化之一: 泛型的概念。泛型

原创 Java編程思想__泛型(二)

泛型還可以應用於內部類以及匿名內部類。 public class Customer { private static long counter=1; private final long id=counter++;

原创 Java編程思想__類型信息

運行時類型信息使得你可以在程序運行時發現和使用類型信息。   什麼是RTTI 運行時類型識別(RTTI, Run_Time Type Identification) 是Java中非常有用的機制,在Java運行時,RTTI 維護類的相關信息

原创 Vue初學遇到Module not found: Error: Can't resolve './components/login.vue' in 項目路徑問題

問題如下 一直報找不到這個login.vue文件   解決辦法如下 ../   把 ./ 改爲 ../ \  

原创 Class.forName("Gum")爲什麼加載不到當前類

今天看到java編程思想,示例上使用 Class.forName("xx")來進行加載類,書上的運行結果和我實際運行結果不一致,經過問度娘最終發現了問題所在。 書上示例爲:    接下來我運行程序做了個實驗 package class

原创 Java編程思想__字符串

可以證明,字符串操作是計算機程序設計中最常見的行爲。   不可變String String 對象時不可變的。查看JDK文檔你就會發現,String 類中每一個看起來會修改String值的方法,實際上都是創建了一個全新的String對象,以

原创 阿里雲服務器-攻擊方法:GET攻擊類型:其他

由於昨天改變了遠程連接阿里雲服務器端口ssh的端口,今天已經沒有遇到暴力破解了但是又遇到其他安全的問題,如下 吐槽一下,你們都這麼閒?都不能讓我的服務器安安靜靜運行一會?   解決辦法如下  由於我服務器使用的nginx進行域名轉發。這

原创 阿里雲服務器-拒絕ssh遠程暴力破解

今天登陸阿里雲服務器的安全控制中心發現雲服務器被人用 SSH暴力破解 ,如下圖 短短一星期,居然有61次攻擊  這時我瞭解了一下 什麼是ssh暴力破解 就是ssh連接  用戶名root 默認連接端口爲22的阿里雲服務器 通過不斷嘗試你的

原创 阿里雲服務器安全警告-異常網絡連接-訪問惡意域名

前言  公司服務器其最近被攻擊了,以前沒有在意,覺得每次都發警告沒什麼重要的,服務器能跑就行了。 但是,最近服務器客戶打電話說服務器 cpu跑滿了,讓我來進行升級服務器內存,我說以前都是好好的,怎麼一下子就滿了呢? 接下來登錄阿里雲安全中

原创 Idea 添加JDK自帶的反編譯工具javap

什麼是javap? javap是 Java class文件分解器,可以反編譯(即對javac編譯的文件進行反編譯),也可以查看java編譯器生成的字節碼。用於分解class文件。   那我們已經怎麼在Idea中使用javap? 1),Fi

原创 Java編程思想__通過異常處理錯誤

Java 的基本理念是 結構不佳的代碼不能運行。 發現錯誤的理想時機是在編譯階段,也就是你試圖運行程序之前。然而,編譯期間並不能找出你的所有錯誤,餘下的問題必須在運行期間解決。這就是需要錯誤源能通過某種方式,把適當的信息傳遞給某個接受者_