匿名内部类创建一个匿名内部类

匿名内部类  时间:2021-09-27  阅读:()

java 匿名内部类 如何实现? 举例说明

使用匿名内部类课使代码更加简洁、紧凑,模块化程度更高。

内部类能够访问外部内的一切成员变量和方法,包括私有的,而实现接口或继承类做不到。

然而这个不是我说的重点,我说的很简单,就是匿名内部类的两种实现方式:第一种,继承一个类,重写其方法;第二种,实现一个接口(可以是多个),实现其方法。

下面通过代码来说明: Java代码 public class TestAnonymousInterClass{ public static void main(String args[]){ TestAnonymousInterClass test=new TestAnonymousInterClass(); test.show(); } //在这个方法中构造了一个匿名内部类 private void show(){ Out anonyInter=new Out(){// 获取匿名内部类实例 void show(){//重写父类的方法 System.out.println("this is Anonymous InterClass showing."); } }; anonyInter.show();// 调用其方法 } } // 这是一个已经存在的类,匿名内部类通过重写其方法,将会获得另外的实现 class Out{ void show(){ System.out.println("this is Out showing."); } } public class InterFaceDemo03{ public static void main(String[] args){ new MyInterface(){ public void sayHello(){ System.out.println("Hello"); } }.sayHello(); } } /* 将接口注释掉 同样可以实现 */ interface MyInterface{ void sayHello(); }

Java匿名内部类怎样创建,有何作用和优点,创建线程怎样使用匿名内部类

1、匿名内部类就是没有名字的内部类。

这是Java为了方便我们编写程序而设计的一个机制。

因为有时候有的内部类只需要创建一个它的对象就可以了,以后再不会用到这个类,这时候使用匿名内部类就比较合适,而且也免去了给它取名字的烦恼。

2、如果满足下面的一些条件,使用匿名内部类是比较合适的: ·只用到类的一个实例。

·类在定义后马上用到。

·类非常小(SUN推荐是在4行代码以下) ·给类命名并不会导致你的代码更容易被理解。

在使用匿名内部类时,要记住以下几个原则: ·匿名内部类不能有构造方法。

·匿名内部类不能定义任何静态成员、方法和类。

·匿名内部类不能是public,protected,private,static。

·只能创建匿名内部类的一个实例。

·一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。

·因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效。

3、用匿名内部类创建多线程有两种方式,和创建一个线程是一样的。

第①种继承Thread: new Thread(){ public void run(){ //do something }; }.start(); 第②种实现 Runnable接口: new Thread(new Runnable() { public void run() { //do something }; }) { }.start();

Java中怎样使用匿名内部类,有什么要求

展开全部 匿名类, 就是没有类名的类 。

例: new Thread(new Runnable() {//因为是实现了Runnable接口的匿名类,就要实现里面的方法 pulic void run() { } } ).start(); //匿名类就这样的。

接下来是内部类 public class Demo{ private class Test{ } } 在一个类的内部声明的类,就是内部类,当然,内部类一般都是在只提供给当前类使用的。

创建一个匿名内部类

很简单的例子: public class NoneClass { Peoples man = new Peoples(){public void eat(){System.out.println("吃饭");}}; } interface Peoples{ public void eat(); } 这里的 new Peoples(){public void eat(){System.out.println("吃饭");}}; 就创建了个匿名内部类 本来接口interface是不能new的,但是紧跟new Peoples(){}后跟的大括号,表示这个接口有个实现类,其实new的是Peoples这个接口的实现类,但是这个实现类是匿名内部类的形式。

无忧云:洛阳/大连BGP云服务器38.4元/月,雅安物理机服务器315元/月起,香港荃湾CN2限时5折优惠

无忧云怎么样?无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点,目前商家开启了夏日清凉补贴活动,商家的机器还是非常...

WHloud Date鲸云数据($9.00/月), 韩国,日本,香港

WHloud Date(鲸云数据),原做大数据和软件开发的团队,现在转变成云计算服务,面对海内外用户提供中国大陆,韩国,日本,香港等多个地方节点服务。24*7小时的在线支持,较为全面的虚拟化构架以及全方面的技术支持!官方网站:https://www.whloud.com/WHloud Date 韩国BGP云主机少量补货随时可以开通,随时可以用,两小时内提交退款,可在工作日期间全额原路返回!支持pa...

百纵科技(1399元/月)香港CN2站群232IP

湖南百纵科技有限公司是一家具有ISP ICP 电信增值许可证的正规公司,多年不断转型探索现已颇具规模,公司成立于2009年 通过多年经营积累目前已独具一格,公司主要经营有国内高防服务器,香港服务器,美国服务器,站群服务器,东南亚服务器租用,国内香港美国云服务器,以及全球专线业务!活动方案:主营:1、美国CN2云服务器,美国VPS,美国高防云主机,美国独立服务器,美国站群服务器,美国母机。2、香港C...

匿名内部类为你推荐
数据库系统概论数据库系统概论的重点是哪些章节?华为技术上海华为技术有限公司怎么样?皮城警备皮城警备这个区怎么样?皮城警备现在皮城警备这区怎么样,?数据挖掘的应用国内基于数据挖掘技术的互联网应用有哪些呢?北方民族大学地址北方民族学校好吗?具体位置在宁夏哪?是几本啊?上海长宽上海地铁最小的车宽度有几米?平顶山教务管理系统河南省教师教育培训管理系统如何操作?ibm磁盘阵列如何在IBM PC服务器3850上做RAID1磁盘阵列?csol进不去cs online为什么打不开
百度域名 香港vps99idc 光棍节日志 dropbox网盘 免费全能空间 华为4核 卡巴斯基官方免费版 双拼域名 空间论坛 已备案删除域名 135邮箱 免费申请网站 双线机房 华为云服务登录 创建邮箱 秒杀品 新加坡空间 防cc攻击 摩尔庄园注册 rewritecond 更多