① 如何用java調用別人API介面
java發一個http請求過去,帶上參數就可以了啊,跟我們在瀏覽器上訪問資源是一樣的 只是它返回的是json格式的數據而已
給你兩個方法吧:
public static String do_post(String url, List<NameValuePair> name_value_pair) throws IOException {
String body = "{}";
DefaultHttpClient httpclient = new DefaultHttpClient();
try {
HttpPost httpost = new HttpPost(url);
httpost.setEntity(new UrlEncodedFormEntity(name_value_pair, StandardCharsets.UTF_8));
HttpResponse response = httpclient.execute(httpost);
HttpEntity entity = response.getEntity();
body = EntityUtils.toString(entity);
} finally {
httpclient.getConnectionManager().shutdown();
}
return body;
}
public static String do_get(String url) throws ClientProtocolException, IOException {
String body = "{}";
DefaultHttpClient httpclient = new DefaultHttpClient();
try {
HttpGet httpget = new HttpGet(url);
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
body = EntityUtils.toString(entity);
} finally {
httpclient.getConnectionManager().shutdown();
}
return body;
}
② java怎麼使用介面 java如何實現介面操作
介面是Java 實現多繼承的一種機制,一個類可以實現一個或多個介面。介面是一系列
方法的聲明,是一些方法特徵的集合,一個介面只有方法的特徵沒有方法的實現,因此這些
方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為。簡單的說介面不
是類,但是定義了一組對類的要求,實現介面的某些類要與介面一致。
在Java 中使用關鍵字interface 來定義介面。例如:
publicinterfaceCompare{
publicintcompare(ObjectotherObj);
}
Compare 介面定義了一種操作compare,該操作應當完成與另一個對象進行比較的功能。
它假定某個實現這一介面的類的對象x 在調用該方法時,例如x . compare(y),如果x 小於y,
返回負數,相等返回0,否則返回正數。
舉例
{
privateStringsId;//學號
//Constructor
10
publicStudent(){
this("","","");
}
publicStudent(Stringname,Stringid,StringsId){
super(name,id);
this.sId=sId;
}
publicvoidsayHello(){
super.sayHello();
System.out.println(".");
}
//get&setmethod
publicStringgetSId(){
returnthis.sId;}
publicvoidsetSId(StringsId){
this.sId=sId;}
//implementsCompareinterface
publicintcompare(ObjectotherObj){
Studentother=(Student)otherObj;
returnthis.sId.compareTo(other.sId);
}
}//endofclass
③ java寫的介面怎麼調用
訪問形式如下例子:
//介面
publicinterfaceLoggerUtil{
//得到Logger,用於列印日誌
Loggerlogger=Logger.getLogger(LoggerUtil.class);
}
@RequestMapping("/delete.do")
publicStringdelete(Studentsstudents){
try{
stuService.delete(students);
}catch(Exceptione){
//介面的調用方式(直接調用)
LoggerUtil.logger.error(e.getMessage());
}
return"redirect:selectAll.do";
}
④ java如何調用介面
public interface PetInterface {
public abstract void pet();
}
比如說你的Fruit類實現PetInterface介面寫法為:
class Fruit implemented PetInterface{
public void pet(){
}
public void hitChild(){
System.out.println("水果:");
}
⑤ java類調用介面中的方法
你要理解介面的作用。介面提供了一種規范,就像現實中,USB介面是一種介面一樣,但是介面一定要有一個具體的實現,比如你的U盤,充電寶等等。相同的介面可以「保證」正常的調用,而不用知道實現這個介面的類具體是個什麼東西。當你把USB介面的設備插在U口上時,其實你並不太關心這些設備內部到底有什麼不同。
面向對象提出介面的概念,就是為了達到這個目的。如果有三個類,都實現了某一介面,它你的代碼調用它們的時候,你不用關心這三個類都有哪些不同,你只關心它們相同的部分,就是介面所「規定」的那些方法,它們肯定要實現的,但具體的實現一定是在各自的類定義里。所以你在看代碼的時候,要看介面方法的具體實現,要在實現介面的類里去看,而不是看介面本身。不知道這樣說,你清楚了沒有。
⑥ JAVA介面調用
介面是用來繼承和實現的 介面裡面的方法只能是抽象方法 實現介面的類必須實現其所有方法
你的介面類寫錯了 應該是
public interface PetInterface {
public abstract void pet();
}
比如說你的Fruit類實現PetInterface介面寫法為:
class Fruit implemented PetInterface{
public void pet(){
}
public void hitChild(){
System.out.println("水果:");
}
⑦ java類,介面,函數調用
interfaceI{
getAccount();
}
classCustomerimplententsI{
}
classOrder{
Cartc;
IsettleAccount;
}
classCart{
}
是這個類結構吧, 「想在Customer類裡面調用Cart裡面的函數「 , 你意思是無法或不允許直接訪問Cart, 只能通過Order操作Cart ?
⑧ java中介面直接調用方法
在另一個類中的service的類型是介面service,但構造是用serviceImpl的構造構造函數構造的,你查看下另一個類的代碼,此外,service也可以是由spring構造注入的,看下spring的配置文件或者注釋確認下
⑨ java介面的使用
面向介面開發是面向對象開發的一個重要思想,面向對象開發是說將一切看成為對象操作,其特性就是封裝、繼承、多態。面向介面就是說用介面封裝一切,將介面功能暴漏給使用者,使用者無需知道具體怎麼實現,只知道這個功能幹嘛用的就可以,思想很接近於現實,下面舉例:
你買了一台電腦,為了便宜,那麼自己組裝吧,還好自己懂點,於是挑選了主板,CPU,內存條等。感覺還不錯,價格合理,兼容性應該也能好,結果你發現一個問題,就是內存條口和主板上的介面不同,插不進去,於是你憤怒了,想怎麼這么多介面,不會產生一種么,便用了一個通宵研究哪個內存對哪個主板,哪個CPU對哪個主板...
介面是描述一種規則!
面向介面是說我主板定義好介面的規則,你內存條我不用管你哪家生產,如何做你自己的內存優化,更不用管你什麼品牌,只要你是內存,你就得按我規定的介面做,這樣用戶就可以插入使用,具體你內存中幹嘛了用戶不必知道,用戶只需要知道自己連接上主板,內存就可以使用了。如果有一天這個內存壞了,也不用把主板和CPU都換了,只需要拿下來,換個新的內存插上就OK。
這里體現了介面的重要性,到軟體里就是面向對象的多態。
比如
interface action{
void fly():
}
這里我定義個介面叫動作執行,裡面有個飛的方法,至於怎麼飛沒人知道,但是只要你實現這個介面就必須得飛,哪怕是鴕鳥...
現在有一個類實現了
class bird implements action{
public void fly(){
//我用翅膀飛
}
}
又一個類實現了, 鴕鳥大哥也要飛
class ostrich implements action{
public void fly(){
//我跑的快,勉強也算飛,你管我怎麼飛,反正我就fly
}
}
這里就比較有意思了,可以理解這兩個鳥肩膀肋下都有兩個洞(介面),給個翅膀就能飛,但是行為不一樣,一個煽動翅膀,一個猛跑....
在軟體中可以寫這樣的方法
public void test(action myStyle){}
未來調用這個方法時可以寫多個,因為方法參數是介面類型,那麼傳遞進去的參數必須是實現此介面類的一個對象
比如
test(new bird());
test(new ostrich());
根據傳遞實現類的對象,執行的行為卻不一樣,但是test方法卻可以體現寫完不用動了,以後想擴展其他fly行為,我可以繼續寫個類實現action介面。這叫向後兼容,呵呵,不知道你懂了沒!
⑩ 關於java的介面調用
把father對象聲明為常量,那麼在它可見的范圍內,只能使用new的那個father對象,不能在做其他修改,比方說,father1 = new Father();father = father1;這樣是非法的。
既然實現了一個介面那麼,就必須實現介面中定義的方法,只要將原來的方法搬下來加上大括弧,那麼編譯器就會默認為你已經實現了介面中的方法,是不會報錯的。
void method(List<string> para){
father.method(para);//只要加了大括弧,那麼不管裡面有什麼,那麼都是此方法的實現。(這個father.method(para),也就是將para參數傳進去並調用介面的方法,實際上調用介面方法,也就是在調用介面方法的實現)
}
或許你還不明白 我在表示一下:
void method(List<String> list),//介面方法,我表示為A
在Son類里,
final Father father=new Father();
void method(List<string> para){ //介面類的實現方法,我表示為B
father.method(para);
}
當father.method(para)時,也就是將參數傳進原來方法A然後在調用A的實現B。只不是回歸調用,結束條件那得因情況而定