首页 新闻 会员 周边

java类 面向对象

0
悬赏园豆:30 [已解决问题] 解决于 2017-02-28 16:56

class.forName的作用?为什么要用?

你对面向对象的理解,特征有什么方面?

幻丿影的主页 幻丿影 | 初学一级 | 园豆:41
提问于:2017-02-21 15:24
< >
分享
最佳答案
1

class.forName()是运用反射的原理创建对象。通俗地说,平时我们创建对象都是用Studeng s = new Studeng()的方式,而class.forName()也是创建对象的一种方式,等你学了反射就知道了。现在你只要知道class.forName()是创建了一个对象就可以;

至于为什么要用。参考http://cmjcmj8080.iteye.com/blog/890790

*********************************华丽的分割线***************************************

JAVA面向对象最重要的特征就是:封装,继承,多态。

封装是为了方便调用类库里面已经写好的函数,继承是方便对已有函数的功能进行直接调用和扩展。按照原则,java中已经写好的类库会被打包成jar包,不允许调用者更改里面的代码。

但是你可以通过其中的抽象类或者接口,根据具体的业务逻辑进行功能的扩展。

多态的作用是,可以实现对继承对象的统一调度,是面向对象的精髓所在。

收获园豆:30
Ctrl` | 老鸟四级 |园豆:3317 | 2017-02-21 16:44

那我们面试的时候面试官问道这个问题的时候我们怎么回答!尤其是这个Class.forName()的作用!

幻丿影 | 园豆:41 (初学一级) | 2017-02-22 10:57

@幻丿影: 简单来说:

若面试问道该处:答:

1:Class.forName( )静态方法的目的是为了动态加载类;

2:比如提出一个叫动态加载类的概念即当你不知道要创建类的名字是哪个的时候,就使用Class.forName(“A”)来加载所需要的类,该方法返回的是一个Class对象,和new ClassA()的作用相同。

 

一般答出来这些应该可以了。再问就说入行不深。只了解这些。没必要追着不放的一直问

Ctrl` | 园豆:3317 (老鸟四级) | 2017-02-22 11:06
其他回答(1)
0

 

class.forname()可以用来获取类名,动态加载的时候用的到

宿舍老五啊 | 园豆:86 (初学一级) | 2017-02-22 15:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册