我们可以在Java接口中定义一个类吗?
是的,您可以在接口内定义一个类。通常,如果接口的方法使用此类,并且在其他地方不使用它,则将在接口内声明一个类。
示例
interface Library {
void issueBook(Book b);
void retrieveBook(Book b);
public class Book {
int bookId;
String bookName;
int issueDate;
int returnDate;
}
}
public class Sample implements Library {
public void issueBook(Book b) {
System.out.println("Book Issued");
}
public void retrieveBook(Book b) {
System.out.println("Book Retrieved");
}
public static void main(String args[]) {
Sample obj = new Sample();
obj.issueBook(new Library.Book());
obj.retrieveBook(new Library.Book());
}
}输出结果
Hello welcome to nhooo
如果我们需要提供接口的默认实现,我们将在接口内部定义一个类,如下所示:
示例
interface Library {
void issueBook(Book b);
void retrieveBook(Book b);
public class Book implements Library {
int bookId;
String bookName;
int issueDate;
int returnDate;
public void issueBook(Book b) {
System.out.println("book issued");
}
public void retrieveBook(Book b) {
System.out.println("book retrieved");
}
}
}
public class Sample {
public void demo() {
System.out.println("Hello welcome to nhooo");
}
public static void main(String args[]) {
Sample obj = new Sample();
obj.demo();
}
}热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西