请问一个关于抽象类被实例化的有关问题!
请教一个关于抽象类被实例化的问题!!!!!!
抽象类:EmailServiceStub
public abstract class EmailServiceStub extends IEmailService.Stub implements IEmailService {
在另一个类里实例化:
public class Pop3Service extends Service {
......
/**
* Create our EmailService implementation here.
*/
private final EmailServiceStub mBinder = new EmailServiceStub() {
@Override
public void loadAttachment(final IEmailServiceCallback callback, final long accountId,
final long attachmentId, final boolean background) throws RemoteException {
Attachment att = Attachment.restoreAttachmentWithId(mContext, attachmentId);
if (att == null || att.mUiState != AttachmentState.DOWNLOADING) return;
long inboxId = Mailbox.findMailboxOfType(mContext, att.mAccountKey, Mailbox.TYPE_INBOX);
if (inboxId == Mailbox.NO_MAILBOX) return;
// We load attachments during a sync
requestSync(inboxId, true, 0);
}
};
......
}
求各位大侠帮忙解释一下!!谢谢~
------解决思路----------------------
用父类引用指向其匿名子类。就是这样,喵喵。
------解决思路----------------------
public class Test {
static ass k =new ass()
{
@Override
public void F() {
System.out.println("xxx");
}
};
public static void main(String[] args) {
k.F();
}
}
abstract class ass{
public abstract void F();}
这是一个例子 参考一下咯
抽象类:EmailServiceStub
public abstract class EmailServiceStub extends IEmailService.Stub implements IEmailService {
在另一个类里实例化:
public class Pop3Service extends Service {
......
/**
* Create our EmailService implementation here.
*/
private final EmailServiceStub mBinder = new EmailServiceStub() {
@Override
public void loadAttachment(final IEmailServiceCallback callback, final long accountId,
final long attachmentId, final boolean background) throws RemoteException {
Attachment att = Attachment.restoreAttachmentWithId(mContext, attachmentId);
if (att == null || att.mUiState != AttachmentState.DOWNLOADING) return;
long inboxId = Mailbox.findMailboxOfType(mContext, att.mAccountKey, Mailbox.TYPE_INBOX);
if (inboxId == Mailbox.NO_MAILBOX) return;
// We load attachments during a sync
requestSync(inboxId, true, 0);
}
};
......
}
求各位大侠帮忙解释一下!!谢谢~
------解决思路----------------------
用父类引用指向其匿名子类。就是这样,喵喵。
------解决思路----------------------
public class Test {
static ass k =new ass()
{
@Override
public void F() {
System.out.println("xxx");
}
};
public static void main(String[] args) {
k.F();
}
}
abstract class ass{
public abstract void F();}
这是一个例子 参考一下咯