java开发接口范文

java编写一个有关接口的程序
public interface 人 -----------接口;
{
public void 吃饭();---------- 接口中的方法;
}
--------------------------------- 接口的实现类;
public class 男人 implements 人
{
public void 吃饭() ------它实现了上面的接口,它就必
-----需实现上面的方法;
{
System.out.println("真好吃");
}
public void 挣钱() ------在实现类中还可以写自己的方法
{
System.out.println("真累啊");
}
}
请教JAVA中interface的作用
1 interface的作用是让使用inerface的人不知道它是怎么实现的,但调用这结方法就好使。
就像是收?L台,它的方法就是收钱。你把钱给它,它给你零钱。
你不用管它用的是电脑还是算盘。它也不想让你知道。
反正功能实现了。 2 当你在使用inerface时,一定是用的implements里的方法,而且经常这么用。
List l = new ArrayList() ; List是接口,ArrayList是它的实现。这后还很有可能有个方法是这样的 public void m1(List l){。
}。这里写List是让这个方法更通用些,只要是List 的实现就能用。
就好比这个款台,台子是一样的,但钱可以不一样。可是美元,也可以是元宝。
但它们都是“钱”的实现,“钱”本身没有意义。 3 implements 和 extends 。
implements是向老师学习,我可以拜很多的人为师,从而我就有了这些人的本领,但我还是我,不过本事大了些;extends 就是认爸爸。 一个人就一个爸,同样我有了爸爸的本领,你可以替你爸去从军,但不能替别的老头子,我也不能再认别的爸了,但可以认老师,几个都没关系。
这之间也许还有别的区别,不过我还没遇到过。 还有一些,我也说不来了。
我还分不太清什么时候用接口或是抽象类,不过我用接口的情况多些。 有人对我说,最好是一个类对应一个接口,我还不理解它的意义有多大,不过大家都是这么写的。
换句话说,一个类好不要凭空就出来,最差也要继承个抽象类。这都是书本上的,记住了,但没什么感觉。
JAVA里的接口谁能给我编写个例子解释下啊
昂, 在java里 基本都是面向接口编程开发, 为什么呢·,应为一个类只能继承一个类 ,却能实现多个接口,
首先 用起来方便,结构清晰
在j2ee中的接口也就是类,类与类之间的通信因为接口而变的简单易懂
举个简单的JDBC的例子吧,比如有个baseDao接口,现在有MySQLDao实现了一个(我们可以把具体的实现类配在配置
文件中,再通过反射进行实例化),也就类似这样的:
baseDao dao = (baseDao)(Class.forName(Config.getDaoname()).newInstance());
其中Config.getDaoName()可以获得配置文件中的配置,比如是:com.bao.dao.impl.MySQLDao。
之后,那些人开始要烧钱了,要改用Oracle了,这样我们只要按baseDao的定义,再实现一个OracleDao就可以了,
再将配置文件中的配置改为:com.bao.dao.impl.OralceDao就可以了,而在已经写好的代码中,我们可以一行不
改的进行了数据库移植,这个就是面向对象设计原则中的“开-闭原则”(对增加是开放的,对修改是封闭的)。但
这只是理论上的,现实中很难做到的。
关于java接口类的题设计一个接口Student,该接口描述的是
IStudent。
java package student; public interface IStudent { public String getName(); public void setName(String name); public String getStudentId(); public void setStudentId(String studentId); public boolean isExcellent(); public void output(); } StudentG。
java package student; public class StudentG implements IStudent { private String name; //姓名 private String studentId; //学号 private boolean cet4Pass = false; //英语四级考试通过 private double score = 0。
0; //综合成绩 public StudentG(String name, String sutdentId, boolean cet4Pass, double score) { = name; udentId = sutdentId; this。 cet4Pass = cet4Pass; ore = score; } @Override public String getName() { return name; } @Override public void setName(String name) { = name; } public boolean isCet4Pass() { return cet4Pass; } public void setCet4Pass(boolean cet4Pass) { this。
cet4Pass = cet4Pass; } public double getScore() { return score; } public void setScore(double score) { ore = score; } @Override public String getStudentId() { return studentId; } @Override public void setStudentId(String studentId) { udentId = studentId; } @Override public boolean isExcellent() { return Cet4Pass() && ( ore >= 85); } @Override public String toString() { return "本科生{" + "姓名=" + name + ", 学号=" + studentId + ", 英语四级考试通过=" + cet4Pass + ", 综合成绩=" + score + }; } @Override public void output() { intln( String()); } } StudentM。 java package student; public class StudentM implements IStudent{ private String name; //姓名 private String studentId; //学号 private boolean cet6Pass = false; //英语六级考试通过 private int count = 0; //文章个数 public StudentM(String name, String sutdentId, boolean cet6Pass, int count) { = name; udentId = sutdentId; this。 cet6Pass = cet6Pass; unt = count; } @Override public String getName() { return name; } @Override public void setName(String name) { = name; } @Override public String getStudentId() { return studentId; } @Override public void setStudentId(String studentId) { udentId = studentId; } public boolean isCet6Pass() { return cet6Pass; } public void setCet6Pass(boolean cet6Pass) { this。
cet6Pass = cet6Pass; } public int getCount() { return count; } public void setCount(int count) { unt = count; } @Override public String toString() { return "研究生{" + "姓名=" + name + ", 学号=" + studentId + ", 英语六级考试通过=" + cet6Pass + ", 发表文章篇数=" + count + }; } @Override public boolean isExcellent() { return Cet6Pass() && unt >= 1; } @Override public void output() { intln( String()); } } Student。 java package student; public class Student { public static void main(String[] args) { // TODO code application logic here IStudent[] students = new IStudent[5]; students[0] = new StudentG("G1","G001",true,90); students[1] = new StudentG("G2","G002",false,60); students[2] = new StudentG("G3","G003",true,80。 0); students[3] = new StudentM("M1","M001",true,0); students[4] = new StudentM("M1","M001",true,10); for(int i = 0;i length;i++){ if(students[i]。
isExcellent()){ int("EXCELENT : "); students[i]。 output(); } } } } 。
java编程实现所有的类和接口
package com.fifth; public interface Person { public void eat();} package com.fifth; public interface Teacher extends Person { public void work();} package com.fifth; public abstract class Student implements Person { private String name; private String sex; public void eat() { System.out.println("学生在吃饭"); } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public abstract void study(); } package com.fifth; public class GraduateStudent extends Student { @Override public void study() { System.out.println("研究生在学习"); } } package com.fifth; public class onLineGraduate extends GraduateStudent implements Teacher { public void work() { System.out.println("在职研究生在工作"); } @Override public void eat(){ System.out.println("在职研究生在吃饭"); } @Override public void study(){ System.out.println("在职研究生在学习"); } } package com.fifth; public class FullTimeTeacher implements Teacher { public void work() { System.out.println("专职老师在工作"); } public void eat() { System.out.println("专职老师在吃饭"); } } package com.fifth; public class Test { public static void main(String[] args) { System.out.println("创建学生类的对象"); //由于Student类为抽象类,所以不可直接实例化,需要使用抽象类的子类实例来进行实例化 Student student = new GraduateStudent(); System.out.println("student类中的方法eat的输出结果:"); student.eat(); System.out.println("student类中的方法study的输出结果:"); student.study(); System.out.println("创建在职研究生类对象"); onLineGraduate onGraduate = new onLineGraduate(); System.out.println("OnLineGraduate类中的方法eat的输出结果:"); onGraduate.eat(); System.out.println("OnLineGraduate类中的方法study的输出结果:"); onGraduate.study(); System.out.println("OnLineGraduate类中的方法work的输出结果:"); onGraduate.work(); System.out.println("创建专职教师的类"); FullTimeTeacher teacher = new FullTimeTeacher(); System.out.println("FullTimeTeacher类中的方法work的输出结果:"); teacher.work(); System.out.println("FullTimeTeacher类中的方法eat的输出结果:"); teacher.eat(); } 运行结果为: }。
java对外接口怎么写
这个要结合面向对象设计思想去思考。
首先实例化的类作为一个角色,你可以把他理解为一个人。那么这个人肯定有与其他人(其他对象)交互的方法。那么这个方法也就别叫做接口。其实这算一种翻译上的过度强调。至少我理解的类的接口和方法是一回事。而interface定义的接口也算一种等待实现的方法。interface独特之处在于,任何实现了这个接口的类所产生的实例。都可以看作是这个interface的一个实例
所以说在设计接口和写对外方法(public)时一定要注意。这个方法(行为)是不是应该这个类(人)他应该具有的。否则就要考虑增加角色
java面向接口编程的文章
记得在刚开始学Java的时候,始终不明白为什么需要接口这一个东西,总会感觉好像是多余的,相信很多初学者跟我的想法也差不多。其实一年后的今天,我也不敢确定我现在的理解是否正确,或者说是就仅我个人的理解,高手看此文章若见小弟理解错误,非常需要您的指点。
在前一阵子,我对接口的理解是这样的:接口就是一种标准,是一种协议。在多人共同完成的项目中遵循这个协议,在最后的整合阶段工作量就减小很多。现在我明白,这样的理解是相当不够的,接口的好处基本上没体会出来。
这段时间,看设计模式之后,我对接口的理解是这样的,让我用最通俗的语言来做比喻好了:
首先看图:
A君是E班的学生,且是E班的团支书,同时,A君也加入了学校的学生会,那么,如果领导在一场学生代表会议上有任务交给E班的学生,他只要说:“E班的同学请举手”,而不是非要知道在会议上的那一个E班同学的名字。同理,如果在一场全校学生会议上,因为领导知道团支书可以做什么工作,领导需要找团支书的话,拿个喇叭大声喊“全体团支书出来”就行了。又假如,领导要找的仅仅是E班的团支书,那么大喊“E班的团支书出来”就行了。
OK,说到这里,先把上面的内容解释一下,你可以这样看:
A君:[A类],且实现了E班接口和团支书接口
E班学生:[E班学生接口]
团支书:[团支书接口]
领导:[领导类]
这样,把上面的语言翻译成面向对象的编程就是:
领导需要使用E班的某一个学生,那么领导类不需要直接去找A类,而是找[E班学生]这个接口就行了,这样对于系统可扩展性是很有好处的,因为,有可能出现B类,同样也是实现了[E班学生]这个接口(也就是说他也是E班的学生),如果前期领导类直接的去找A类,就需要修改代码才能让领导类去引用B类,但如果领导类在前期找的就是[E班学生]这个接口,那么不用修改代码就可以达到目的。
其他句子大家可以自己体会体会。
用java 的接口和实现来完成
interface IUsb{
public abstract void init();
public abstract void work();
public abstract void destroy();
}
abstract class Usb implements IUsb{
public void init(){
System.out.println("您插入了U盘。。");
}
public void work(){
System.out.println("USB开始工作。。");
}
public void destroy(){
System.out.println("工作已完成,将停止退出。。");
}
}
class Upan extends Usb{//U盘
public Upan(){
init();
}
}
class Print extends Usb{//打印机
public Print(){
init();
}
}
public class Text
{
public static void main (String [] args)
{
IUsb iusb=new Upan();
iusb.work();
iusb.destroy();
}
}
java api 接口怎么编写
Java语言提供了一种强大的注释形式:文档注释。可以将源代码里的文档注释提取成一份系统的API文档。我们在开发中定义类、方法时可以先添加文档注释,然后使用javadoc工具来生成自己的API文档。
文档注释以斜线后紧跟两个星号()作为结尾,中间部分全部都是文档注释,会被提取到API文档中。
自行搜索一下javadoc即可,示例如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class DemoClass {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}