有如下代码,程序的执行结果是( )。 interface Person { public void eat(); } public class Main { public static void main(String[] a) { Person p = new Person() { public void eat() { System.out.println("eat something"); } }; p.eat(); } }
时间: 2023-12-30 15:02:46 浏览: 82
程序的执行结果是:
```
eat something
```
这段代码定义了一个 `Person` 接口,接口中有一个 `eat()` 方法。然后在 `main()` 方法中创建了一个匿名内部类来实现 `Person` 接口,并重写了 `eat()` 方法。最后调用 `p.eat()` 方法输出 "eat something"。
相关问题
import java.util.Scanner; interface Biology{ void breathe(); } interface Animal{ void eat(); void sleep(); } class Person implements Biology,Animal{ public Person(){ } public void breathe(){ System.out.println("我喜欢呼吸新鲜空气"); } public void eat(){ System.out.println("我会按时吃饭"); } public void sleep(){ System.out.println("早睡早起身体好"); } public void think(){ System.out.println("我喜欢思考"); } } class Pupil extends Person{ private String school; public Pupil(){ } public Pupil(String school){ this.school = school; } public void setschool(){ this.school = school; } public String getschool(){ return school; } } public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); String name = in.next(); Pupil zhangsan = new Pupil(name); System.out.println("我的学校是"+zhangsan.getschool()); zhangsan.breathe(); zhangsan.eat(); zhangsan.sleep(); zhangsan.think(); } }
这是一个 Java 代码示例,它定义了一个接口 Biology 和一个接口 Animal,以及一个实现了这两个接口的 Person 类和继承自 Person 的 Pupil 类。在 Main 类中,通过输入一个名字创建一个 Pupil 实例,并输出它的学校名称,然后调用 Pupil 实例继承自 Person 类的方法 breathe()、eat()、sleep() 和 think()。
其中,接口是 Java 中一种特殊的类,它只定义了方法名,而没有具体的实现,需要由实现该接口的类来提供具体实现。在这个例子中,Biology 接口定义了一个 breathe() 方法,Animal 接口定义了 eat() 和 sleep() 方法,Person 类实现了这两个接口,并提供了具体的实现。Pupil 类继承了 Person 类,并增加了一个私有成员变量 school 和相应的 setter 和 getter 方法。在 main() 方法中,我们创建了一个 Pupil 对象,设置它的 school 值,然后调用它继承自 Person 类的方法和自身的方法。
/** * 编写一个学校接待方面的程序,招待不同身份的人的食宿问题 */ public class Main { public static void main(String[] args) { entertain(new Student()); entertain(new Teacher()); } private static void entertain(Person p) { p.eat(); p.sleep(); } } // 请在下面的 Begin-End 之间按照注释中给出的提示编写正确的代码 /********** Begin **********/ // 定义一个接口类 Person // 定义 eat(),实现输出吃饭的功能,无返回值 // 定义 sleep(),实现睡觉的功能,无返回值 // 定义一个 Student 类并实现 Person 接口 // 实现 eat():输出:“学生去食堂吃饭。”; // 实现 sleep():输出:“学生在宿舍睡觉。”。 // 定义一个 Teacher 类并实现 Person 接口 // 实现 eat():输出:“老师去教师食堂吃饭。”; // 实现 sleep():输出:“老师在学校公寓睡觉。”。 /********** End **********/
请见下面的代码:
```java
/********** Begin **********/
// 定义一个接口类 Person
interface Person {
void eat();
void sleep();
}
// 定义 eat(),实现输出吃饭的功能,无返回值
// 定义 sleep(),实现睡觉的功能,无返回值
// 定义一个 Student 类并实现 Person 接口
class Student implements Person {
// 实现 eat():输出:“学生去食堂吃饭。”;
public void eat() {
System.out.println("学生去食堂吃饭。");
}
// 实现 sleep():输出:“学生在宿舍睡觉。”。
public void sleep() {
System.out.println("学生在宿舍睡觉。");
}
}
// 定义一个 Teacher 类并实现 Person 接口
class Teacher implements Person {
// 实现 eat():输出:“老师去教师食堂吃饭。”;
public void eat() {
System.out.println("老师去教师食堂吃饭。");
}
// 实现 sleep():输出:“老师在学校公寓睡觉。”。
public void sleep() {
System.out.println("老师在学校公寓睡觉。");
}
}
/********** End **********/
public class Main {
public static void main(String[] args) {
entertain(new Student());
entertain(new Teacher());
}
private static void entertain(Person p) {
p.eat();
p.sleep();
}
}
```
以上代码定义了一个接口类 Person,该类包含了 eat() 和 sleep() 两个方法,它们是学校招待客人系统中不同身份客人共有的行为。接着定义了一个 Student 类和一个 Teacher 类,它们都实现了 Person 接口,并分别实现了 eat() 和 sleep() 方法。最后,在 Main 类中定义了 entertain() 方法,用于招待不同身份的客人,并调用了它来招待一个学生和一名老师。
阅读全文