Cannot make a static reference to the non-static

今天再用一個android和php之間加密傳輸的問題,提示: php

 Cannot make a static reference to the non-static method ...... android

 解決方法:先實例化類,而後再調用。 加密

如: spa

MCryptAES srtaes = new MCryptAES();  
srtaes.encrypt("中國"); 對象

這是網上的介紹: 進程

......在靜態方法中,不能直接訪問非靜態成員(包括方法和變量)。由於,非靜態的變量是依賴於對象存在的,對象必須實例化以後,它的變量纔會在內存中存在。例如一個類 Student 表示學生,它有一個變量String address。若是這個類沒有被實例化,則它的 address 變量也就不存在。而非靜態方法須要訪問非靜態變量,因此對非靜態方法的訪問也是針對某一個具體的對象的方法進行的。對它的訪問通常經過 objectName.methodName(args……) 的方式進行。而靜態成員不依賴於對象存在,即便是類所屬的對象不存在,也能夠被訪問,它對整個進程而言是全局的。所以,在靜態方法內部是不能夠直接訪問非靜態成員的...... 內存

相關文章
相關標籤/搜索