几个关于synchronized和Class、ResourceBundle的知识点

synchronized出现在实例方法的时候,锁的一定是this对象

synchroized最好不要嵌套使用,不然发生了死锁很难找出问题。

类锁是直接把syncroized加到静态方法上,而不是把类写到synchronized代码块上

.setDaemon设置为守护进程。当用户进程结束后,就会自动结束。

try catch的使用

如何自己定义一个异常类并且使用?

接口的设置:
    interfact 本接口的名字 [extends 其他的接口] {
        具体的方法体...
    }

synchronized()代码块后面的参数是什么意思?
    是对象。如果传的是相同的对象,则是代表这些对象共用这一把锁。

通过相对路径得到绝对路径:String path=Thread.currentThread().getContextClassLoader.getResourse("路径").getPath();
    注意:这里的相对路径的根是scr(但是其实真正的是在out下,只是为了方便才这么认为)

    改进:String path=Thread.currentThread().getContextClassLoader.getResourseAsStream("路径");

得到Class文件的三种方法。
    Class c1=Class.forname("完整类名");    //包括了包名的那种。例如java.util.Scanner

    String s1=new String("hello");
    Class c2=s1.getClass();

    Class c3=s1.class;

资源绑定器:
    ResourceBundle bundle =new ResourceBundle.getBundle("路径");
    注意:使用这个的时候,我们要去掉路径的后缀
    它是用来资源文件.properties的。

    它在util包下。
    它很苛刻,文件扩展名必须是properties ,并且不可以加扩展名。
    
    ResourceBundle bundle =new ResourceBundle.getBundle("路径");
    String className=bundle.getString("className");
    以上是从路径下的properties文件中查找className的键,返回的值给了String类型的对象className。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值