Java 泛型&类库&枚举&反射机制 要点

简介: 一、泛型二、常用类库三、枚举四、Java反射机制

一、泛型


1、泛型可以使程序的操作更加安全,可以避免发生类转换异常。


2、在程序中如果使用类时没有指定泛型,则泛型将被擦除掉,将使用Object接收参数。


3、可以使用通配符“?”接收全部的泛型类型对象。


4、通过<?extends类>可以设置泛型的上限,通过<?super类>可以设置泛型的下限。


5、泛型方法可以定义在泛型类中,也可以定义在普通类中。


6、泛型可以在接口中定义,实现泛型接口的子类要指明具体的泛型类型。


7、泛型可以嵌套使用。


8、在程序中定义没有方法的接口,这样的接口一般称为标识接口。


二、常用类库


1、在一个字符串内容需要频繁修改时,使用StringBuffer可以提升操作性能,因为 StringBuffer内容可以改变,而String内容不可以改变。


2、StringBuffer类中提供了大量的字符串操作方法,如增加、替换、插入等。


3、Runtime表示运行时在一个JVM中只存在一个Runtime,所以如果要想取得 Runtime类的对象,直接使用Runtime类中提供的静态方法getRuntime()即可。


4、国际化程序实现的基本原理为:所有的语言信息以key—>value的形式保存在资源文件之中,程序通过key找到相应的value,根据其所设置国家的Locale对象不同,找到的资源文件也不同。要想实现国际化必须依靠Locale、ResourceBundle两个类共同完成。


5、System类是系统类,可以取得系统的相关信息,使用System.gc()方法可以强制性地进行垃圾的收集操作,调用此方法实际上就是调用了Runtime类中的gc()方法。


6、Format类为格式化操作类,主要的3个子类是MessageFormat、NumberFormat、 DateFormat。


7、使用Date类可以方便地取得时间,但取得的时间格式不符合地域的风格,所以可以使用SimpleDateFomat类进行日期的格式化操作。


8、处理大数字可以使用Biglnteger和BigDecimal类,当需要精确小数点操作位数时应使用BigDecimaI类。


9、通过Random类可以取得指定范围的随机数字。


10、如果一个类的对象要被克隆,则此对象所在的类必须实现Cloneable接口。


11、要对一组对象进行排序,则必须使用比较器,比较器接口Comparable中定义了compareTo()的比较方法,用来设置比较规则。


12、正则表达式是开发中最常使用的一种验证方法,String类中的replaceAll()、split()、 matches()方法都对正则有所支持。


13、可以使用Time和TimeTask类完成系统的定时操作。


三、枚举


1、在程序中可以使用一个枚举来指定对象的取值范围。


2、在Java中使用enum关键字定义一个枚举类,每一个枚举类都是继承Enum类。


3、在枚举中可以通过values()方法取得枚举中的全部内容。


4、在枚举类中可以定义构造方法,但在设置枚举范围时必须显式地调用构造方法。


5、所有的枚举类都可以直接使用Comparable进行排序,因为Enum类实现了Comparable接口。


6、Java类集中提供枚举的支持类是EnumMap、EnumSet。


四、Java反射机制


1、Class类是反射机制操作的源头。


2、Class类的对象有3种实例化方式:

(1)通过Object类中的getClass()方法。

(2)通过“类.class ”的形式。

(3)通过Class.forName()方法,此种方式最为常用。


3、可以通过Class类中的newInstance()方法进行对象的实例化操作,但是要求类中必须存在无参构造方法,如果类中没有无参构造,则必须使用Constructor类完成对象的实例化操作。


4、可以通过反射取得一个类所继承的父类、实现的接口、类中的全部构造方法、全部普通方法及全部属性。


5、使用反射机制可以通过Method调用类中的方法,也可以直接操作类中的属性。


6、动态代理可以解决开发中代理类过多的问题,提供统一的代理功能实现。


7、在程序的开发中使用反射机制并结合属性文件,可以达到程序代码与配置文件相分离的目的。


目录
相关文章
|
9天前
|
Java 数据库连接 Spring
反射-----浅解析(Java)
在java中,我们可以通过反射机制,知道任何一个类的成员变量(成员属性)和成员方法,也可以堆任何一个对象,调用这个对象的任何属性和方法,更进一步我们还可以修改部分信息和。
|
29天前
|
Java 程序员
深入理解Java异常处理机制
Java的异常处理是编程中的一块基石,它不仅保障了代码的健壮性,还提升了程序的可读性和可维护性。本文将深入浅出地探讨Java异常处理的核心概念、分类、处理策略以及最佳实践,旨在帮助读者建立正确的异常处理观念,提升编程效率和质量。
121 1
|
30天前
|
Java 开发者 UED
深入探索Java中的异常处理机制##
本文将带你深入了解Java语言中的异常处理机制,包括异常的分类、异常的捕获与处理、自定义异常的创建以及最佳实践。通过具体实例和代码演示,帮助你更好地理解和运用Java中的异常处理,提高程序的健壮性和可维护性。 ##
51 2
|
30天前
|
Java 开发者
Java中的异常处理机制深度剖析####
本文深入探讨了Java语言中异常处理的重要性、核心机制及其在实际编程中的应用策略,旨在帮助开发者更有效地编写健壮的代码。通过实例分析,揭示了try-catch-finally结构的最佳实践,以及如何利用自定义异常提升程序的可读性和维护性。此外,还简要介绍了Java 7引入的多异常捕获特性,为读者提供了一个全面而实用的异常处理指南。 ####
50 2
|
2月前
|
运维 Java 编译器
Java 异常处理:机制、策略与最佳实践
Java异常处理是确保程序稳定运行的关键。本文介绍Java异常处理的机制,包括异常类层次结构、try-catch-finally语句的使用,并探讨常见策略及最佳实践,帮助开发者有效管理错误和异常情况。
103 5
|
1月前
|
Java 程序员 UED
深入理解Java中的异常处理机制
本文旨在揭示Java异常处理的奥秘,从基础概念到高级应用,逐步引导读者掌握如何优雅地管理程序中的错误。我们将探讨异常类型、捕获流程,以及如何在代码中有效利用try-catch语句。通过实例分析,我们将展示异常处理在提升代码质量方面的关键作用。
45 3
|
1月前
|
Java 数据库连接 开发者
Java中的异常处理机制:深入解析与最佳实践####
本文旨在为Java开发者提供一份关于异常处理机制的全面指南,从基础概念到高级技巧,涵盖try-catch结构、自定义异常、异常链分析以及最佳实践策略。不同于传统的摘要概述,本文将以一个实际项目案例为线索,逐步揭示如何高效地管理运行时错误,提升代码的健壮性和可维护性。通过对比常见误区与优化方案,读者将获得编写更加健壮Java应用程序的实用知识。 --- ####
|
1月前
|
开发框架 安全 Java
Java 反射机制:动态编程的强大利器
Java反射机制允许程序在运行时检查类、接口、字段和方法的信息,并能操作对象。它提供了一种动态编程的方式,使得代码更加灵活,能够适应未知的或变化的需求,是开发框架和库的重要工具。
47 3
|
28天前
|
Java API 开发者
深入理解Java中的异常处理机制
本文探讨了Java编程语言中异常处理的核心概念,包括异常类型、异常捕获与抛出、以及最佳实践。通过分析常见的异常场景和处理策略,旨在帮助开发者更好地理解和运用异常处理机制,提高代码的健壮性和可维护性。文章不仅涵盖了基本的try-catch结构,还深入讨论了自定义异常的创建与使用,以及finally块的重要性和应用。此外,还将介绍一些高级技巧,如多异常捕获和嵌套异常处理,为读者提供全面的技术指导。
86 0
|
2月前
|
Java API 数据库
Java 反射机制:动态编程的 “魔法钥匙”
Java反射机制是允许程序在运行时访问类、方法和字段信息的强大工具,被誉为动态编程的“魔法钥匙”。通过反射,开发者可以创建更加灵活、可扩展的应用程序。
45 2