匿名内部类属于局部内部类吗_java 基础 匿名内部类 方法的重载

话不多说,参考:

java中的匿名内部类总结 - Nerxious - 博客园​www.cnblogs.com

我好像很久很久没看过这东西了。。

看到一个面试题:

class test  
{
	public static void main (String[] args) throws java.lang.Exception
	{
	    Thread t1=new Thread(){
	        public void run(){
	            System.out.println("t1");
	        }
	    };
	     Thread t2=new Thread(){
	        public void run(){
	            System.out.println("t2");
	        }
	    };
	    t1.start();
	    t2.start();
	}
}

问这个输出的是啥。

我反手第一思考,这不就是线程调度的随机性嘛,应该是不确定。然后我再看一下这创建线程的方式,感觉怎么有点陌生啊。不都是继承thread类或者实现runnable接口或callable接口吗?这?

然后答案还有个不确定。。

然后我就犹豫不决了。

回来百度看到了上面这个链接,原来这是Java的匿名内部类啊。

还有一种写法:

何柄融:零星知识小总结​zhuanlan.zhihu.com

这是我两年前写的。。

这样一来对匿名内部类就基本不会再傻逼了。

方法的重载:

参考:

Java 重写(Override)与重载(Overload)​www.runoob.com
cdf1f8b8bb7feb9b06f87845b482122e.png

重载(Overload)

重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。

每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。

最常用的地方就是构造器的重载。

重载规则:

  • 被重载的方法必须改变参数列表(参数个数或类型不一样);
  • 被重载的方法可以改变返回类型;
  • 被重载的方法可以改变访问修饰符;
  • 被重载的方法可以声明新的或更广的检查异常;
  • 方法能够在同一个类中或者在一个子类中被重载。
  • 无法以返回值类型作为重载函数的区分标准。

我记得的是参数类型不同就ok了,然后没注意到返回类型可以相同也可以不相同,这个就很细节得导致了我的失败。我以为都要返回类型要相同。。难受。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值