最新回答 / qy9999
比如说有猫类和狗类,都继承动物类,执行c.newInstance()以后生成的是哪个类的对象就已经确定了,这时候强转就相当于这样:Cat cat = new Cat(); Animal a = (Animal) cat; a.eat()就调用的是Cat类中的eat(),因为a是从Cat类对象强转过来的,所以调用的是Cat中的eat()
2017-10-13
最赞回答 / Brilliant
万事万物皆对象这句话没错,而private,public是java中的标识符,修饰符,并不是对象。例如: 美丽的石蝴蝶,我们能说“美丽的”是对象吗?这里的美丽的只是用来形容我们的对象——"蝴蝶"。类似的,private表示私有的,例如:private int age 表示 私有的年龄。再则java中,private,public还有default 是权限修饰符可以修饰类,属性和方法。关于private,public,default你可以去看看基础讲解,我就不再细说了。
2017-10-11
本节目的:通过Java反射(方法对象对类操作:我自己叫它反操作:)来了解泛型
本节钥点: 1.反射的操作都是编译之后的操作。
2.Java中集合的泛型,是防止错误输入的,只在编译阶段有效,绕过编译阶段无效。
3.方法的反射可以绕过编译(呼应第一点一样),所以变异之后集合的泛型是去泛型化的。
本节钥点: 1.反射的操作都是编译之后的操作。
2.Java中集合的泛型,是防止错误输入的,只在编译阶段有效,绕过编译阶段无效。
3.方法的反射可以绕过编译(呼应第一点一样),所以变异之后集合的泛型是去泛型化的。
2017-10-11
老师使用的是args输入 用eclipse的同学可以自己改成scanner输入
另外需要注意的就是用eclipse就不能和老师一样简简单单写个
forName("Word") 了
需要加上自己的包名(默认包的话就不用加了)
另外需要注意的就是用eclipse就不能和老师一样简简单单写个
forName("Word") 了
需要加上自己的包名(默认包的话就不用加了)
2017-10-08
1. Class c1=Foo.class;
2.Class c2=foo1.getClass();
3.Class c3=null; c3=Class.forName("com.imocc.reflect.Foo");
2.Class c2=foo1.getClass();
3.Class c3=null; c3=Class.forName("com.imocc.reflect.Foo");
2017-10-08
最新回答 / 慕尼黑5107759
个人理解,就是创建实例化对象就肯定用到构造器(无参或带参),而在使用反射中的 newInstance()方法创建对象时,并没有传参数,那么可以确定是使用了该类的无参构造
2017-09-30