匿名内部类

package cn.hpu.test;

//import cn.hpu.anonymous.Man;
import cn.hpu.anonymous.Person;
//import cn.hpu.anonymous.Women;

public class PersonTest {
	
//	//根据传入类型的不同,调用不同的方法
//	//方案一:创建getRead方法
//	public void getRead(Man man) {
//		man.read();
//	}
//	public void getRead(Women women) {
//		women.read();
//	}

	//方案二:多态
	public void getRead(Person person) {
		person.read();
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		PersonTest person=new PersonTest();
//		Man one=new Man();
//		Women two=new Women();
//		
//		person.getRead(one);
//		person.getRead(two);
//		
		//方案三:匿名内部类:实例化对象的同时完成对对象内容的重写
		person.getRead(new Person() {

			@Override
			public void read() {
				// TODO Auto-generated method stub
				System.out.println("男生爱看科幻小说");
			}
		});
		person.getRead(new Person() {

			@Override
			public void read() {
				
				System.out.println("女生爱看言情小说");

			}
			
		});
	}
}

匿名内部类知识点:

           1.匿名内部类没有类型名称,没有实例对象名称,
         * 2.匿名内部类编译后文件的命名:外部类$数字.class
         * 3.无法用private,public, protected,static,abstract修饰
         * 4.无法添加构造方法,可以添加构造代码块
         * 5.不能出现静态成员,也不能出现抽象方法
         * 6.匿名内部类可以实现接口,也可以继承父类,但二者不可兼得。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值