分享

java基础接口练习

 孤独一兵 2016-09-26

1、编写2个接口:InterfaceA和InterfaceB;在接口InterfaceA中有个方法voidprintCapitalLetter;在接口InterfaceB中有个方法void printLowercaseLetter;然后写一个类Print实现接口InterfaceA和InterfaceB,要求printCapitalLetter方法实现输出大写英文字母表的功能,printLowercaseLetter方法实现输出小写英文字母表的功能。再写一个主类E,在主类E的main方法中创建Print的对象并赋值给InterfaceA的变量a,对象a调用printCapitalLetter方法;最后再在主类E的main方法中创建Print的对象并赋值给InterfaceB的变量b,对象b调用printLowercaseLetter方法。

public interface InterfaceA { void printCapitalLetter;}
public interface InterfaceB { void printLowercaseLetter;}
public class Print implements InterfaceA,InterfaceB { @Override public void printLowercaseLetter { char chr=new char[26]; char j=65; for(int i=0;i<=25;i++){ chr[i]="j;" j++;="" }="" system.out.print('大写字母:');="" for(char="" temp:chr){="" system.out.print(temp);="" }="" system.out.println;="" }="" @override="" public="" void="" printcapitalletter="" {="" char="" chr="new" char[26];="" char="" j="97;" for(int="" i=""><=25;i++){ chr[i]="j;" j++;="" }="" system.out.print('小写字母:');="" for(char="" temp:chr){="" system.out.print(temp);="" }="" system.out.println;="">

2、按要求编写Java程序:

(1)编写一个接口:InterfaceA,只含有一个方法int method(int n);

(2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算1到n的和;

(3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算n的阶乘(n!);

(4)编写测试类E,在测试类E的main方法中使用接口回调的形式来测试实现接口的类。

public interface InterfaceA { void printCapitalLetter; int method(int n);}
public class ClassA implements InterfaceA{ @Override public int method(int n) { // 1到n的和 int sum=0; for(int i=0;i<=n;i++){ sum+="i;" }="" return="" sum;="" }="" @override="" public="" void="" printcapitalletter="" {="" todo="" 自动生成的方法存根="">
public class ClassB implements InterfaceA{ @Override public int method(int n) { //n的阶乘 int sum=1; for(int i=1;i<=n;i++){ sum*="i;" }="" return="" sum;="" }="" @override="" public="" void="" printcapitalletter="" {="" todo="" 自动生成的方法存根="">
public class E { public static void main(String[] args){ InterfaceA a =new Print; a.printCapitalLetter; InterfaceB b=new Print; b.printLowercaseLetter; InterfaceA e=new ClassA; InterfaceA ee=new ClassB; System.out.println('1到100的和是:'+e.method(100)); System.out.println('10的阶乘是:'+ee.method(10)); }}

java基础接口练习

3、中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按照国务院的指示进行安全生产。请编写一个java应用程序描述上述的体制现象。要求如下:

(1)该应用程序中有一个“党中央”接口:CentralPartyCommittee,该接口中有个“坚持党的领导”方法:void partyLeader

(2)该应用程序中有一个“国务院”抽象类:StateCouncil,该抽象类中有个“安全生产”的抽象方法:abstract void safetyInProduction

(3)该应用程序中有一个“省政府”类:Province,该类继承StateCouncil抽象类并且实现CentralPartyCommittee接口;在实现partyLeader方法时输出“我们各省人民一定坚持党的领导!”;在重写safetyInProduction方法时输出“我们各省人民一定按照国务院的指示进行安全生产!”。

(4)该应用程序中有一个主类E,在主类E的main方法中创建Province类的对象,来测试Province类的功能。

public interface CentralPartyCommittee { void partyLeader;}
public abstract class StateCouncil { abstract void safetyInProduction;}
public class Province extends StateCouncil implements CentralPartyCommittee { @Override public void partyLeader { System.out.println('我们各省人民一定坚持党的领导!'); } @Override void safetyInProduction { System.out.println('我们各省人民一定按照国务院的指示进行安全生产!'); }}
public class E { public static void main(String[] args){ //第三题 Province pro=new Province; pro.partyLeader; pro.safetyInProduction; }}

4、看下图实现如下接口和类,并完成Adventure中的主方法。

java基础接口练习java基础接口练习

public interface CanSwim { void swim;}
public interface CanFly { void fly;}
public abstract class ActionCharacter { abstract void fight(String emp); void speak(String s){ System.out.println(s); }}
public class Hero extends ActionCharacter implements CanSwim,CanFly { String name; Hero(String name){ this.name=name; } @Override public void fly { System.out.println(name+' I can fly!'); } @Override public void swim { System.out.println(name+' I can swim!'); } @Override void fight(String emp) { System.out.println(emp); }}
public class Adventure { public static void main(String[] args) { Hero hb=new Hero('超人'); hb.swim; hb.fly; hb.fight('我要Fighting!'); hb.speak('I am superman!'); CanFly cf=hb; cf.fly; CanSwim cs=hb; cs.swim; ActionCharacter ac=hb; ac.fight('我要打仗!'); ac.speak('我是超人,我无敌!'); }}

java基础接口练习

5、利用接口做参数,写个计算器,能完成+-*/运算

(1)定义一个接口Compute含有一个方法int computer(int n,int m);

(2)设计四个类分别实现此接口,完成+-*/运算

(3)设计一个类UseCompute,含有方法:public void useCom(Compute com, int one, int two)

此方法要求能够:1.用传递过来的对象调用computer方法完成运算

2.输出运算的结果

(4)设计一个测试类,调用UseCompute中的方法useCom来完成+-*/运算

public interface Compute { int computer(int n,int m);}
public class Jia implements Compute { @Override public int computer(int n, int m) { return n+m; }}
public class Jian implements Compute{ @Override public int computer(int n, int m) { return n-m; }}
public class Cheng implements Compute { @Override public int computer(int n, int m) { return n*m; }}
public class Chu implements Compute { @Override public int computer(int n, int m) { int sum = 0; try{ sum=n/m; }catch(Exception e){ System.out.println('被除数不能为0'); } return sum; }}
public class UseCompute { public void useCom(Compute com, int one, int two){ System.out.println(com.computer(one, two)); }}
public class Testcompute { public static void main(String[] args) { UseCompute uc=new UseCompute; System.out.print('10+5='); uc.useCom(new Jia,10,5); System.out.print('10-5='); uc.useCom(new Jian,10,5); System.out.print('10X5='); uc.useCom(new Cheng,10,5); System.out.print('10/5='); uc.useCom(new Chu,10,5); uc.useCom(new Chu,10,0); }}

java基础接口练习

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多