Java面试题附带答案(二)

本文主要探讨了Java面试中常见的问题,包括获取Class的方式、反射的优缺点、getName、getCanonicalName与getSimpleName的区别、byte的取值范围以及switch语句在不同数据类型上的应用。还涉及了char类型存储中文、break、continue、return的区别、数组与String的length属性和方法等。
摘要由CSDN通过智能技术生成

016如何获取Class?

1)Class clazz=class.forName("包名.类名")

2)Class clazz=类名.class;

3)Class clazz=对象.getClass();

017反射中常用的方法?

(1)获取类的权限修饰符--------->int result=getModifiers();

(2)获取名字------------>string name=clazz.getName();

(3)获取包名------------>Packge p=clazz.getPackge();

(4)寻找clazz中无参数构造方法:Clazz.getConstructor([String.class]);

执行构造方法创建对象:Con.newInstance([参数]);

(5)Field c=cls.getFields():获得某个类的所有的公共(public)的字段,包括父类中的字段。

Field c=cls.getDeclaredFields():获得某个类的所有声明的字段,即包括public、private和 proteced,但是不包括父类的声明字段。

018反射得利与弊?

(1)反射得经典用法就是在xml或者properties配置文件中,然后在java类里面区解析这些内容,得到一个字符串,然后通过反射机制,通过这些字符串获得某个类得class实例,这样的话就可以动态的配置一些东西,而不需要每次都重新去new,要改的话也是直接改配置文件,代码维护起来方便很多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值