Java通过接口实现匿名类的实例
package com.chase.test; /**
* 通过接口实现匿名类的实例
*
* @author Chase
*
* @date 2013-10-18 下午04:28:17
*
* @version V1.0
*/
interface I1 {
void print();
void eat();
} public class AnonymousClass { public static String excute(I1 c){
System.err.println("excute方法打印...");
c.print();
c.eat();
return "excute()返回的值...";
} public String testExcute() {
return excute(new I1(){
public void print() {
System.out.println("调用匿名内打印...");
} public void eat() {
System.out.println("今天的饭菜好好吃...");
}
}) ;
} public static void main(String[] args) {
AnonymousClass entity = new AnonymousClass();
System.out.println(entity.testExcute());
}
}
运行结果:
aaarticlea/png;base64,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" alt="" />
Java通过接口实现匿名类的实例的更多相关文章
- Java入门教程十(抽象类接口内部类匿名类)
抽象类(abstract) 一个类只定义了一个为所有子类共享的一般形式,至于细节则交给每一个子类去实现,这种类没有任何具体的实例,只具有一些抽象的概念,那么这样的类称为抽象类. 在面向对象领域,抽象类 ...
- Java——接口、匿名类
接口语法 public interface Demolnteface{ public void demo(): //其他方法 //所有方法都是抽象的 } 接口里放: 1.静态常量 (一般全部大写) 2 ...
- java语言中的匿名类与lambda表达式介绍与总结 (Anonymous Classes and Lambda Expressions)
2017/6/30 转载写明出处:http://www.cnblogs.com/daren-lin/p/anonymous-classes-and-lambda-expressions-in-java ...
- [改善Java代码]建议40:匿名类的构造函数很特殊
建议40: 匿名类的构造函数很特殊 在上一个建议中我们讲到匿名类虽然没有名字,但可以有一个初始化块来充当构造函数,那这个构造函数是否就和普通的构造函数完全一样呢?我们来看一个例子,设计一个计算器,进行 ...
- Java Observer接口和Observable类实现观察者模式
对于观察者模式,其实Java已经为我们提供了已有的接口和类.对于订阅者(Subscribe,观察者)Java为我们提供了一个接口,JDK源码如下: package java.util; public ...
- Java内部抽象类的匿名类初始化
说在前面的话,以前写过一次这个变态代码,后来重构,把那个new的语法简化了,最近又要整,差点都想不起来了,留个文档把 1.下面这个案例更变态,抽象类还有一个个泛型类:首先内部抽象类的定义: /* * ...
- 在java的静态方法中访问类的实例成员
直接来看代码: public class Example { int x = 3;//类的实例变量,初始化值为3 static int y = 4;//类的静态变量,初始化值为4 public sta ...
- java List接口中常用类
Vector:线程安全,但速度慢,已被ArrayList替代. ArrayList:线程不安全,查询速度快. LinkedList:链表结构,增删速度快.取出List集合中元素的方式: get(int ...
- java学习(三)类、实例
类 public class Dog{ String breed; int age; String color; void barking(){ } void hungry(){ } void sle ...
随机推荐
- [tsA1490][2013中国国家集训队第二次作业]osu![概率dp+线段树+矩阵乘法]
这样的题解只能舔题解了,,,qaq 清橙资料里有.. #include <iostream> #include <cstdio> #include <cstdlib> ...
- 装饰器 转载自 http://www.cnblogs.com/huxi/archive/2011/03/01/1967600.html
今天来讨论一下装饰器.装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数 ...
- [Tools] VS Code Tips
Inside one file, you can freely mark the number 1-9: -] And jump to Number of bookmark: cmd + [-] It ...
- UNP(一):网络编程角度下的TCP、UDP协议
此博文是学习UNP(UNIX Network Programming)后的读书笔记,供以后自己翻阅回想知识. TCP.UDP概述 在前面<计算机网络与TCP/IP>栏目下已经介绍过一些关于 ...
- oc51--循环retain
// main.m // 循环retain #import <Foundation/Foundation.h> #import "Person.h" #import & ...
- linux中两个缓冲区
不同于Windows,Linux系统里存在两个剪切板:一个叫做选择缓冲区(X11 selection buffer),另一个才是剪切板(clipboard). 01)选择缓冲区(缓冲内容在其他位置可用 ...
- C# datagridview 删除行(转 学会、放弃博客)
原文引入:http://zhangyanyansy.blog.163.com/blog/static/13530509720106171252978/ datagridview 删除行 2010-07 ...
- 【POJ 1475】 Pushing Boxes
[题目链接] http://poj.org/problem?id=1475 [算法] 双重BFS [代码] #include <algorithm> #include <bitset ...
- img标签间距问题
关于img标签间距问题:多个img之间有间距,包含img标签的div之间有间距. <!doctype html> 2 <html lang="en"> 3 ...
- Redis(四)-配置
Redis 配置 Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf. 你可以通过 CONFIG 命令查看或设置配置项. 语法 Redis CONFIG 命令格式如下: ...