导航:首页 > 编程语言 > java内部类接口

java内部类接口

发布时间:2022-06-13 14:07:54

java内部类和接口都可以实现多重继承,但是什么时候用那种呢

楼主,你好。
我们先抛开代码的重写不谈,先谈一下设计,你认为合理吗,一个类继承两个接口,两个接口中居然有一相同的方法,那么这个接口的抽象就出现问题了。所以你这个题仅仅是作为一个理论层次的讨论,实际中并不会出现。
其次,就这个问题来说,也许我们在一个实现类中确实就写了一段print()方法,结果运行确实通过了,也不报错了,但是楼主我们细想一下,我们达到目的了吗?这是我们想到的吗?答案是no,两个不同的接口,就应该有不同的业务逻辑,怎么能用一个方法去归并两个呢?那我们为什么不抽象成一个方法呢?好,这样就回到了我前面说的,属于设计问题了。
呵呵,就这样。希望楼主能看透这点,在深究不放,那就是不好啦。

Ⅱ Java匿名内部类可以实现接口吗

匿名内部类可以用于接口上,只要一个类是抽象的或是一个接口,那么其子类中的方法都可以使用匿名内部类来实现。最常用的情况就是在多线程的实现上,因为要实现多线程必须继承Thread类或是继承Runnable接口。
具体示例代码如下:
interface
Person
{
public
void
eat();
}
public
class
Demo
{
public
static
void
main(String[]
args)
{
Person
p
=
new
Person()
{
public
void
eat()
{
System.out.println("eat
something");
}
};
p.eat();
}
}
运行结果:eat
something

Ⅲ 关于JAVA内部类向上转型为接口的问题(第十行)

你的InnerClass 是private 的,在其它类的作用域里面是不能访问InnerClass 内部的函数的。

你把private 改成public 就好了,或者在OuterClass2中添加专门的方法调用该内部类的f方法

Ⅳ java接口内部类

package com.clark.app;

/**
* Created with IntelliJ IDEA.
* User: clark
* Date: 13-10-9
* Time: 下午12:07
*/
public class QuestionMain implements ITest{
public static void main(String[] args) {
ITest.TestInternal.test(new QuestionMain());
}

@Override
public void print() {
System.out.println("真正实现方法");
}
}

interface ITest {

void print();

public static class TestInternal {
public static void test(ITest test) {
test.print();
}
}
}

Ⅳ java 为什么匿名内部类需要接口请详细基础一点,只是初学者。

new语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口。它还创建那个类的一个新实例,并把它作为语句的结果而返回。要扩展的类和要实现的接口是new语句的操作数,后跟匿名类的主体

Ⅵ java 内部类 为什么可以实现接口

这是面向对象编程的特性决定的
以java为例:
既然是匿名内部类,它首先是一个类。所有的类都是继承自Object的,你实现的匿名类,也就需要继承某个类。如new Button(){}
实现接口也是一种匿名类声明的方法,因为你实现的接口是默认继承Object类的,比如new Runnable(){}

Ⅶ java 内部类 和接口问题

你好,看这两句代码。
B b = new B(); //这句好理解吧。就是创建类B的一个实例对象b
b.test();//关键看这句,调用test方法。
1. 调用test方法
2. 执行this.get(new C()) ; //这句就会调用类B中的get方法,因为C是接口A的实现类,因此可以做为参数传递进去。
3. 根据多态性,执行new C().fun1() ;
4.所以会打印出10

Ⅷ java内部类接口问题

Machine 和 MachineHeart 的关系是 MachineHeart is a Machine
凡是在本来需要Machine的地方都可以使用MachineHeart
getMachine()的返回类型是Machine,返回MachineHeart当然是可以的,而且必须也只能是一个实现的Machine的类的实例.因为接口无法直接创建对象
实现接口和继承(extends)很相似

一句话:父类的引用可以指向子类实例 (这是多态的基础)

Ⅸ JAVA内部类使用,什么时候该使用内部类及使

java中的内部类和接口加在一起,可以的解决常被C++程序员抱怨java中存在的一个问题 没有多继承。

每个内部类都能独立的继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。

1.内部类继承

因为内部类的构造器必须连接到指向其外围类对象的引用,所以在继承内部类的时候使用特殊语法。问题在于,指向外围类对象的引用必须被初始化,而在导出类中不存在可连接的默认对象。所以必须要用特殊语法来明确说清楚他们之间的关联。

[java]view plain

阅读全文

与java内部类接口相关的资料

热点内容
气动隔膜式压缩机 浏览:470
linux如何修改主机名 浏览:104
单片机光标上下移动 浏览:526
数据加密验证 浏览:108
程序员被激怒 浏览:891
winxp找不到服务器dns地址 浏览:842
以文本文件的格式保存考生文件夹 浏览:41
编译原理文法分为几类 浏览:570
JAVA基础学python要多久 浏览:74
java流量控制 浏览:936
java实现多重继承 浏览:707
票据通加密狗怎么在新系统上使用 浏览:795
航模加密狗连接电脑 浏览:473
好用的汇编语言编译器 浏览:863
自己编译安卓虚拟机 浏览:913
中国的古代算法 浏览:656
上层怎么看程序员 浏览:27
程序员便当排骨 浏览:855
如何禁用安卓全家桶 浏览:261
oa服务器异常怎么办 浏览:73