更新時間:2020-09-15 16:53:21 來源:動力節點 瀏覽5662次
題目1:
創建Person接口(即“人”),它有setData()和getData()方法對“人”屬性name、sex和birthday賦值和獲得這些屬性組成的字符串信息。創建類Student實現Person接口,并對自己的“學生”屬性的成員變量sID、speciality設置值和獲得它們值所組成的字符串信息。
代碼:
People.java(接口)
package?com.interfaces;
public?interface?People?{
public?void?setData(String?name,String?sex,String?birthday);
public?String?getData();
}
Student.java(實現接口的類)
package?com.interfaces.impl;
?
import?com.interfaces.People;
?
public?class?Student?implements?People?{
?private?String?name;??
?private?String?sex;??
?private?String?birthday;??
?private?String?sID="2014";??
?private?String?speciality="寫代碼";??
@Override
public?void?setData(String?name,?String?sex,?String?birthday)?{
//?TODO?Auto-generated?method?stub
???????this.name=name;
???????this.sex=sex;
???????this.birthday=birthday;
}
?
@Override
public?String?getData()?{
//?TODO?Auto-generated?method?stub
????return?"名字:?"?+?name?+?",性別:?"?+?sex?+?",生日:?"?+?birthday?+?",ID:?"?+?sID?+?",專長:?"?+speciality;
}
?
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
???????People?Yantai=new?Student();
???????Yantai.setData("海哥",?"男",?"2017年2月19日");
???????System.out.println(Yantai.getData());
???????
}
?
}
題目2:
編寫程序,求柱體的體積:
(1)、為柱體的底面設計一個接口Geometry,包含計算面積的方法getArea();
(2)、為柱體設計類pillar,要求:
a)有兩個成員變量,底面和高度。底面是任何可以計算面積的幾何形狀。
b)實現構造方法,對成員變量賦值。
c)包含成員方法,計算柱體pillar的體積。
(3)、編寫測試類圓形類、矩形類實現Geometry接口,編寫測試類Test,分別用圓形、矩形作為柱體的底面,并計算其體積。
代碼:
Geometry.java(接口)
package?com.interfaces;
public?interface?Geometry?{
public?double?getArea();
}
Test.java(接口實現類)
package?com.interfaces.impl;
?
import?com.interfaces.Geometry;
?
public?class?Test?{
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
?Pillar?pillar;????
?????????Geometry?bottom;????
????????????????
?????????bottom?=?new?Rect(10,?5);?//接口實現方法???
?????????pillar?=?new?Pillar(bottom,?5);????
?????????System.out.println("矩形底的柱體的體積:"?+?pillar.Volume());????
????????????????
?????????bottom?=?new?Circle(5);?
?????????pillar?=?new?Pillar(bottom,?5);????
?????????System.out.println("圓形底的柱體的體積:"?+?pillar.Volume());??
}
/*
?*?柱體設計類
?*/
class?Pillar{
Geometry?bottom;??
????double?height;??
????public?Pillar(Geometry?bottom,?double?height){??
????????this.bottom=bottom;??
????????this.height=height;??
????}??
????public?double?Volume(){??
????????return?bottom.getArea()*this.height;???
????}??
}
/*
?*?矩形測試類
?*/
class?Circle?implements?Geometry{
????????double?radius;
public?Circle(double?radius){??
????????this.radius?=?radius;??
????}??
public?double?getArea()?{
//?TODO?Auto-generated?method?stub
return?Math.PI*this.radius*this.radius;
}
}
/*
?*?圓形測試類
?*/
class?Rect?implements?Geometry{??
????double?wide,length;??
????public?Rect(double?wide,?double?length){??
????????this.wide?=?wide;??
????????this.length?=?length;??
????}??
????public?double?getArea()?{??
????????return?wide*length;??
????}??
}??
}
以上就是動力節點java培訓機構的小編針對“Java接口編程練習題,趕緊收藏起來吧”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習