作者LaPass (LaPass)
看板java
标题[问题] Java中有没有类似C# Acetion的东西?
时间Wed Sep 21 14:53:28 2011
C#中有Func<TResult>这个Delegate
在C#当中,我把它当函数指标来用,也就是说
假设我想做一些来自物件外部的判断时,可以这样用
public class Myobj
{
Func<bool> iftrue;
public Myobj(Func<bool> iftrue)
{
this.iftrue = iftrue;
}
public void DoSomething()
{
if (iftrue())
{
//做一些自己想做的事
}
}
}
class OtherClass
{
public static bool isToDo()
{
//.................
}
}
使用时是像这样
.........
Myobj myobj = new Myogj(OtherClass.isToDo);
.........
myobj.DoSomething()
.........
请问Java当中有类似的公用介面之类的东西吗?
类似:
interface Get<T>
{
T get();
}
这种东西?
要不然自己要宣告一堆class会档案很杂
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.33.58.232
1F:推 luoqr:public Myobj(Getboolean obj){if(obj.getboolean()){...} } 09/21 19:39
我想问的是说,标准函式库有没有已经写好的那种东西?
interface Getboolean
{
boolean getboolean();
}
如果有的话,我就能随时写个匿名物件
而不用import自己的函式库
而且.... 把(Getboolean当成方法的参数就失去这样做的目的了,这样做目的
就是为了让函式在执行时能自己取得外部的讯息,而不用由外部给他
※ 编辑: LaPass 来自: 125.233.152.154 (09/21 20:31)