`
lhx1026
  • 浏览: 307190 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

java类字面常量

阅读更多

下面哪些代码能正常编译?

A、Class c = int.class;
B、Class c = "hello".getClass();
C、Class c = String[].class;
D、Class c = Integer.getClass();
E、Class c = Enum.class;
F、Class c = Void.TYPE;

答案:ABCEF

关于java.lang.Class对象的取得,总结如下

取得方法

释义

使用getClass()方法
常量:Class c = "foo".getClass();
枚举:enum E { A, B } Class c = A.getClass();
接口:Set<String> s = new HashSet<String>(); Class c = s.getClass();
数组:byte[] bytes = new byte[1024]; Class c = bytes.getClass();
一般引用:String str = "foo"; Class c = str.getClass();


运用.class语法

基本类型:Class c1 = boolean.class; Class c2 = int.class;


数组:Class c = int[][][].class;

类接口:Class c = java.io.File.class;


运用静态方法Class.forName()

基本类:Class c = Class.forName ("java.lang.String");


内部类:Class c = Class.forName ("java.lang.HashMap$Entry");


数组:Class c = Class.forName ("[I");

运用基本类型包装类的.TYPE语法(包装器类也可使用.class语法)
Class c1 = Boolean.TYPE;
Class c1 = Byte.TYPE;
Class c1 = Character.TYPE;
Class c1 = Short.TYPE;
Class c1 = Integer.TYPE;
Class c1 = Long.TYPE;
Class c1 = Float.TYPE;
Class c1 = Double.TYPE;
Class c1 = Void.TYPE;


使用特殊方法
Class c = java.lang.String.class.getSuperclass();
Class<?>[] c = Character.class.getClasses();

Class<?>[] c = Character.class.getDeclaredClasses();
Class c = f.getDeclaringClass();
Class<c> = o.getClass().getEnclosingClass();

分享到:
评论

相关推荐

    Java中的常量如何避免反模式Java开发Java经验技巧

    - 在Java中,常量通常定义在`final`修饰的静态字段中,位于一个专门的`Constants`或`Config`类中。这样做有助于代码的组织,使得常量的查找和使用更加方便。 2. **命名规范**: - 常量的命名应遵循大写驼峰命名法...

    议Java语言中常量定义的注意事项.pdf

    Java提供了两种类型的常量:字面常量和符号常量。 1. 字面常量:直接表示其数值意义,无需额外定义。例如,整型常量(如45、-75),浮点型常量(如42.7f),字符常量(如'a'),布尔常量(如true),以及字符串类型...

    java内存分配之常量池,栈,堆1

    包括字符串字面量、final常量、类和接口的全限定名、字段名和描述符、方法名和描述符等。在运行时,如果两个字符串的值相等,它们在常量池中可能只有一份拷贝,这是Java字符串常量池复用机制的体现。在Java 6及之前...

    java元数据——CLass类

    通过这种方式不会初始化静态域,使用 .class 的方式获取Class对象叫做类的字面常量。 Class clazz = Integer.class; Class clazz = int.class; 3. 对于基本数据类型的封装类还可以通过 .TYPE 的方式获取其Class ...

    Java常量的应用共2页.pdf.zip

    首先,Java中的常量主要分为四类:字面量常量、final常量、枚举常量和注解常量。 1. **字面量常量**:这是最基础的常量形式,包括整型(如123)、浮点型(如3.14)、字符型(如'c')、字符串(如"Hello, World!")...

    详解JAVA 常量池

    在编译时,JAVA编译器会将源代码中的字面量和符号信息存储到常量池中,以便在运行时可以快速地访问和使用这些信息。 在上面的例子中,我们可以看到,编译后,常量池中包含了许多信息,例如类的名称、字段、方法、...

    JAVA常量

    常量值又称为字面常量,它是通过数据直接表示的,因此有很多种数据类型,像整型和字符串型等。下面一一介绍这些常量值。 (二)分类 《1》整型常量值 Java 的整型常量值主要有如下 3 种形式。 十进制数形式【……】 ...

    java常量池分析.pdf

    常量池是每个类或接口在编译时都会生成的一部分,它存储了各种类型的常量,包括字面量(如字符串、整数、浮点数)和符号引用(对类、方法、字段的引用)。在JVM加载类的过程中,会将类的常量池加载到方法区。 当...

    Java堆,栈和常量池详解

    ### Java堆、栈和常量池详解 #### Java内存模型概览 在深入探讨Java中的堆、栈以及常量池之前,我们先来简要回顾一下Java内存模型的基本概念。Java程序运行时会使用到不同的内存区域来存储各种类型的数据,这些...

    java 创建字符串类

    - 字符串常量池是JVM内存中的一个特殊区域,用于存放所有的字符串字面量。当创建一个`String`对象时,如果常量池中已经存在相同内容的字符串,那么将返回该字符串的引用,而不是创建新的对象。 4. **字符串比较**...

    探究Java常量本质及三种常量池(小结)

    字面量是Java语言层面常量的概念,如文本字符串、声明为final的常量值等。符号引用则属于编译原理方面的概念,包括类和接口的全限定名、字段名称和描述符、方法名称和描述符等。 静态常量池的内容是class文件中的...

    java 内存中 堆、栈、常量池、方法区的总结

    常量池是方法区的一部分,它存放了程序中定义的各种基本类型的字面量和引用类型变量的引用。这里包括了字符串常量、各种类型(如final)的常量值等。常量池的好处是让字符串等数据可以被共享,因此在常量池中的数据...

    大数据必学Java基础(十一):变量和常量

    字面常量包括数字(如1、2、3)、字符(如'a'、'b')、布尔值(true、false)以及字符串(如"helloWorld")。这些值在程序中是固定不变的。符号常量则是用final修饰的常量,例如,你可以定义一个名为`PI`的常量来...

    什么是字符串常量池?Java开发Java经验技巧共6页.p

    1. **字面量字符串的创建**:当你创建一个字符串字面量,如`"abc"`,Java会在常量池中查找是否已有相同的字符串,如果没有,就添加到池中并返回其引用;如果有,就直接返回已有的引用。 2. **字符串拼接与...

    java学习教程之常量折叠详解

    "Java学习教程之常量折叠详解" 在Java语言中,常量折叠是一种编译器优化技术,它指的是编译期常量加减乘除的运算过程会被折叠。常量折叠的概念是指在编译期间,编译器会将一些表达式计算好,不需要在运行时进行计算...

    java中常量以及常量池

    1、举例说明 变量 常量 字面...  静态常量池:*.class文件中的常量池,class文件中的常量池不仅仅包含字符串,数值字面量,还包含类、方法的信息,占用class文件绝大部分空间。  运行时常量池:是jvm虚拟机在完成类装

    Java编程中须注意的细节.pdf

    在Java中,整数字面常量(int或long)的类型由其后缀决定。如果一个整数字面常量没有后缀,则默认为int类型,此时即使它是十六进制或八进制表示,其值也不能超过int类型的最大值。如果要表示超过int类型的值,需要...

    Java中的字符串常量池详细介绍

    字符串常量池的存在是基于Java中`String`类的不可变性。因为字符串是不可变的,所以多个变量引用同一个字符串对象时,即使其中一个变量修改其值,也不会影响其他变量,保证了数据的完整性。 关于字符串常量池中存储...

    java String类常量池分析及"equals"和"==”区别详细介绍

    在Java编程语言中,`String`类是一个...总的来说,Java中的`String`类和它的常量池,以及`equals()`和`==`的区别,是理解Java内存管理和对象比较的关键知识点。掌握这些知识,有助于编写出更加高效、健壮的Java代码。

    Java String 字符串常量池解析

    在 Java 中,字符串对象的创建有多种方式,例如使用字面量、使用 `new` 操作符等。了解字符串对象的创建方式可以帮助我们更好地理解 Java 中的字符串常量池。 在实际开发中,理解字符串常量池的机制可以帮助我们...

Global site tag (gtag.js) - Google Analytics