java lesson 20
1. 要想使用反射,首先需要获得待处理类或对象所对应的Class对象。
2. 获取某个类或某个对象所对应的Class对象的常用的3种方式:
a) 使用Class类的静态方法forName:Class.forName(“java.lang.String”);
b) 使用类的.class语法:String.class;
c) 使用对象的getClass()方法:String s = “aa”; Class<?> clazz = s.getClass();
3. 若想通过类的不带参数的构造方法来生成对象,我们有两种方式:
a) 先获得Class对象,然后通过该Class对象的newInstance()方法直接生成即可:
Class<?> classType = String.class;
Object obj = classType.newInstance();
b) 先获得Class对象,然后通过该对象获得对应的Constructor对象,再通过该Constructor对象的newInstance()方法生成:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{});
Object obj = cons.newInstance(new Object[]{});
4. 若想通过类的带参数的构造方法生成对象,只能使用下面这一种方式:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{String.class, int.class});
Object obj = cons.newInstance(new Object[]{“hello”, 3});
5. Integer.TYPE返回的是int,而Integer.class返回的是Integer类所对应的Class对象。
1. 要想使用反射,首先需要获得待处理类或对象所对应的Class对象。
2. 获取某个类或某个对象所对应的Class对象的常用的3种方式:
a) 使用Class类的静态方法forName:Class.forName(“java.lang.String”);
b) 使用类的.class语法:String.class;
c) 使用对象的getClass()方法:String s = “aa”; Class<?> clazz = s.getClass();
3. 若想通过类的不带参数的构造方法来生成对象,我们有两种方式:
a) 先获得Class对象,然后通过该Class对象的newInstance()方法直接生成即可:
Class<?> classType = String.class;
Object obj = classType.newInstance();
b) 先获得Class对象,然后通过该对象获得对应的Constructor对象,再通过该Constructor对象的newInstance()方法生成:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{});
Object obj = cons.newInstance(new Object[]{});
4. 若想通过类的带参数的构造方法生成对象,只能使用下面这一种方式:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{String.class, int.class});
Object obj = cons.newInstance(new Object[]{“hello”, 3});
5. Integer.TYPE返回的是int,而Integer.class返回的是Integer类所对应的Class对象。
发表评论
-
已前的学习笔记java lesson 19
2012-01-03 13:25 705java lesson 19 1. 当遍历集合或数组时,如果需 ... -
已前的学习笔记java lesson 18
2012-01-03 13:23 786java lesson 18 1. 有这样一个类: // ge ... -
已前的学习笔记java lesson 17
2012-01-03 13:22 697java lesson 17 1. 当向ArrayList添加 ... -
已前的学习笔记java lesson 16
2012-01-02 15:54 800java lesson 16 1. 对于Java中 ... -
已前的学习笔记java lesson 15
2012-01-02 15:52 863java lesson 15 1. 包装类( ... -
已前的学习笔记java lesson 14
2012-01-02 15:49 841java lesson 14 1. 接口中所 ... -
已前的学习笔记java lesson 13
2012-01-02 15:45 631java lesson 13 Java SE Lesson 2 ... -
已前的学习笔记java lesson 12
2012-01-02 15:43 690JAVA lesson 12 1. 类是一种 ... -
已前的学习笔记java lesson 11
2012-01-01 12:51 717Java lesson 11 1. 如果一个类包含了属性与方法 ... -
已前的学习笔记java lesson 11
2011-12-31 15:02 0Java lesson 11 1. 如果一个类包含了属性与方法 ... -
已前的学习笔记java lesson 10
2011-12-31 14:42 722Java lesson 10 1. 类中的属性又叫做成员变量( ... -
已前的学习笔记java lesson 9
2011-12-31 14:17 679Java lesson 9 1. 面向对象 ... -
已前的学习笔记java lesson 8
2011-12-31 14:00 774Java lesson 8 1. break语句:经常用在循环 ... -
已前的学习笔记java lesson 7
2011-12-31 12:00 685Java lesson 7 1. Java中的循环控制语句一共 ... -
已前的学习笔记java lesson 6
2011-12-31 11:31 782Java lesson 6 1. 条件运算符(三元表达式),其 ... -
已前的学习笔记java lesson 5
2011-12-30 22:29 702Java lesson 5 运算符 关系运算符 1.大于(&g ... -
已前的学习笔记java lesson 4
2011-12-30 21:33 720Java lesson 4 运算符(operator) pub ... -
已前的学习笔记java lesson 3
2011-12-30 21:02 602Java lesson 3 Pitfall of primit ... -
已前的学习笔记java lesson 2
2011-12-30 20:02 659Java lesson 2 Primitive date ty ... -
已前的学习笔记java lesson 1
2011-12-30 18:15 630Lesson 1 Java se java standard ...
相关推荐
java技术从入门到精通(孙鑫)学习笔记-Lesson2
java技术从入门到精通(孙鑫)学习笔记Lesson4
【Java学习笔记】是针对Java编程语言的一份详尽的学习资料,主要由“圣思源”提供,旨在帮助初学者和进阶者深入理解和掌握Java技术。这份笔记可能包含了从基础语法到高级特性的全面讲解,结合了理论与实践,通过实例...
"java技术从入门到精通(孙鑫)学习笔记Lesson1"涵盖了Java的基础知识,包括JDK、JRE、J2SE、J2EE和J2ME等核心概念。 JDK,全称为Java Develop Kit,是Java开发工具包,包含了编译器、调试器和各种工具,用于编写、...
java技术从入门到精通(孙鑫)学习笔记Lesson3(接口)
java技术从入门到精通(孙鑫)学习笔记Lesson10(网络编程)
Java 多线程是编程中的重要概念,尤其在并发处理和高效系统设计中扮演着关键角色。本节主要探讨了Java中的线程概念以及如何创建...通过不断的实践和学习,可以更好地利用Java的多线程特性来提升软件的性能和用户体验。
【Java技术从入门到精通——Lesson3学习笔记】 在Java编程语言中,包(package)是一种组织类的方式,它的引入主要是为了管理和解决大型项目中大量类的命名冲突问题。包在Java中扮演着类似文件系统目录的角色,允许...
本篇笔记主要关注的是继承这一概念。 继承允许我们创建一个新类,这个新类可以从现有的类(父类或超类)中继承属性和行为。这样做的好处是可以减少代码重复,提高代码的复用性,并且使得类之间的关系更加清晰。在...
面向对象编程是Java技术的核心,它是以对象为...理解这些概念是深入学习Java技术的基础,也是成为一名精通Java的程序员所必需的。通过实践和不断学习,你可以更好地掌握面向对象编程的精髓,提高编程效率和代码质量。
本篇笔记主要讨论了几个关键的数据结构,包括LinkedList、ArrayList以及HashSet,并通过实例展示了它们的用法。 首先,LinkedList是一个实现了List接口的类,它采用双向循环链表实现。这意味着每个节点包含一个数据...
【压缩包子文件的文件名称列表】:由于只给出了“two lesson”这一条信息,我们可以假设压缩包内包含了一系列与Java编程第二课相关的文件,可能有PPT课件、代码示例、笔记文档、练习题等,用于帮助学习者理解并掌握...
通过学习这个“圣思园Java.web笔记”,开发者可以系统地掌握Java Web开发的基本技能,为构建动态、交互性强的Web应用程序打下坚实的基础。无论是初学者还是有经验的开发者,都能从中受益,提升自己的技术水平。
《Java学习》是一个全面深入的Java编程学习资源,包含了丰富的笔记和配套代码,旨在帮助学习者更好地理解和掌握Java编程语言。这个压缩包文件是学习Java过程中的重要参考资料,它包括了多个子目录,每个子目录代表了...
【标题】:“小贝程序员生活\课件\java\javaclass\thirteen lesson.rar” 提供的是一份关于Java编程的课程资料,其中包含了第十三课的内容。这个压缩包很可能是针对初学者或者有一定基础的Java开发者设计的,旨在...
描述中同样提到“小贝程序员生活\课件\java\javaclass\one lesson.rar”,这暗示了这个压缩包的内容与Java编程语言的“javaclass”部分相关,可能包含课件、笔记、代码示例或教学视频等学习资源。"javaclass"通常指...
描述中提到的路径结构暗示这是一个关于Java类和对象的学习资料,可能包括PPT、笔记、代码示例等。"小贝程序员生活"可能是讲师或课程系列的名字,而"\java\javaclass"表明内容专注于Java语言的基础和高级特性,特别是...
【压缩包子文件的文件名称列表】:仅给出“nine lesson”,这可能是压缩包内的主目录或者文件夹名,里面可能包含了该课程的PPT、代码示例、笔记文档、视频教程等各类学习资源,帮助学习者理解和实践Java类的使用。...
7. **notes**:可能是一些学习笔记,包含了对Java学习过程中的重点、难点的理解和解析,对于巩固理论知识非常有帮助。 8. **lesson-code**:顾名思义,这部分很可能是各个课程单元的代码示例,按照教学进度逐步深入...