黑马程序员技术交流社区
标题:
这道面试题有人会么
[打印本页]
作者:
Conning
时间:
2014-5-17 22:25
标题:
这道面试题有人会么
interface Inter {
public abstract void show();
}
class Outer {
//请完成Outer的内容
}
class InterClassTest{
public static void main(String[] args) {
Outer.method().show();
}
}
复制代码
作者:
焚雨成灰
时间:
2014-5-17 22:32
interface Inter {
public abstract void show();
}
class Outer {
//请完成Outer的内容
public static Inter method() {
return null;
}
}
class InterClassTest{
public static void main(String[] args) {
Outer.method().show();
}
}
复制代码
作者:
skill20
时间:
2014-5-17 22:48
interface Inter {
public abstract void show();
}
class Outer {
//请完成Outer的内容
public static Inter method() {
return new Inter(){
public void show(){}
};
}
}
class InterClassTest{
public static void main(String[] args) {
Outer.method().show();
}
}
复制代码
作者:
yinxjfly
时间:
2014-5-17 23:03
/*
分析思路:
1.因为在主函数中直接通过Outer类名直接调用了method()方法,
说明method()是Outer类中的一个静态方法。
2.method()方法又直接调用show()方法,但发现show()方法是接口Inter
的方法,所以可以得出,method()这个方法运算后是一个Inter类型的实例对象,
可以通过匿名内部类来实现Inter借口。
*/
interface Inter {
public abstract void show();
}
class Outer {
//请完成Outer的内容
static Inter method()
{
return new Inter()
{
public void show()
{
System.out.println("show() funning!");
}
};
}
}
class InterClassTest{
public static void main(String[] args) {
Outer.method().show();
}
}
作者:
执笔梦
时间:
2014-5-17 23:15
和楼上一样..
作者:
大漠孤烟
时间:
2014-5-17 23:24
学习啦、、楼主讲的很详细啊,我一开始只想到method()是Outer类中的一个静态方法,show是Inner接口的方法,原来可以用匿名内部类去实现inner接口,调用接口方法、、、
作者:
yemenglin
时间:
2014-5-17 23:52
/*
1、在main方法里面有一个Outer类名调用了method()方法
那么这个method()方法肯定是Outer类中的一个静态的方法
(因为只有本类中的静态方法才能直接被类名调用)
2、在method()方法后面又直接调用了show()方法。show()方法又是Inter
接口中的方法,但是Inter接口不能直接创建对象,也没有被实现。
所以就要想到使用匿名内部类去实现Inter接口
3、因为匿名内部类是没有名字的,所以它返回的是Inter接口类型
匿名内部类的格式:new 外部类名或者接口名(){覆盖类或者接口中的代码。(也可以自定义内容)};
*/
interface Inter{
public abstract void show();
}
class Outer{
//请完成Outer的内容
public static Inter method(){
return new Inter(){
public void show(){}
};
}
}
class InterClassTest{
public static void main(String[] args){
Outer.method().show();
}
}
作者:
Dijkstra
时间:
2014-5-18 01:49
用匿名内部类
作者:
流沙
时间:
2014-5-18 07:00
基础视频里边的第110个视频,匿名内部类,一模一样的题!基础视频没好好看???
作者:
۩大世界小人物
时间:
2014-5-18 07:26
考察匿名内部类的
作者:
jiang_ming
时间:
2014-5-18 09:51
interface Inter
{
public abstract void show();
}
class Outer
{
//请完成Outer的内容
public static Inter method()
{
Inter i=new Inter()
{ public void show()
{System.out.println("show");}
};
return i;
}
}
class InterClassTest{
public static void main(String[] args) {
Outer.method().show();
}
}
复制代码
作者:
铁血丹心
时间:
2014-5-18 12:28
老毕的视频里面有的
作者:
stream
时间:
2014-5-18 14:58
class method implements inter
{ void show(){}}
复制代码
这样不就结了么
作者:
stream
时间:
2014-5-18 15:09
stream 发表于 2014-5-18 14:58
这样不就结了么
少了个static
作者:
youcyou
时间:
2014-5-18 15:11
匿名内部类
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2