java类初始化说明

java类初始化说明,java,Java,我对java有点陌生,如果有人能向我解释下面的代码示例,我会很高兴。这只是一个示例java代码片段,用于说明。但主要的问题是,如果class Learn使用一个参数初始化另一个class Smart,该参数也是class对象,那么将dot类添加到class对象示例中会让我感到困惑。如有任何解释,将不胜感激。如果这是一个基本问题,我道歉。谢谢 class Learn { //some codes Smart smart = new Smart(Sample.class); //some code

我对java有点陌生,如果有人能向我解释下面的代码示例,我会很高兴。这只是一个示例java代码片段,用于说明。但主要的问题是,如果class Learn使用一个参数初始化另一个class Smart,该参数也是class对象,那么将dot类添加到class对象示例中会让我感到困惑。如有任何解释,将不胜感激。如果这是一个基本问题,我道歉。谢谢

class Learn {
//some codes 
Smart smart = new Smart(Sample.class);
//some codes
} 

Sample
是类的名称。它不是一个物体。
newsample()
是类为
Sample
的对象
Sample.class
是一个对象,其类为
java.lang.class
,描述类
Sample

Sample
是类的名称。它不是一个物体。
newsample()
是类为
Sample
的对象
Sample.class
是一个对象,其类为
java.lang.class
,它描述了类
Sample

,我将用下面的方式打断您的示例

学习-是一门
课程

smart-
smart
类型的
对象引用变量
,我们可以说Class Learn具有smart类型的引用

Sample.class-是获取特定类型的
类的一种方法

从Java文档中提取。

在实现过程中,它取决于目标字节码版本。如果-target 1.4(或下面的
),则会在静态方法中将对Class.forName()的调用插入到代码中,该静态方法在类型初始化期间被调用。如果使用-target 1.5(或更高版本),常量池将获得一个“类”条目


请参阅Java语言规范的第15.8.2节了解更多详细信息

我将用以下方式打断您的示例

学习-是一门
课程

smart-
smart
类型的
对象引用变量
,我们可以说Class Learn具有smart类型的引用

Sample.class-是获取特定类型的
类的一种方法

从Java文档中提取。

在实现过程中,它取决于目标字节码版本。如果-target 1.4(或下面的
),则会在静态方法中将对Class.forName()的调用插入到代码中,该静态方法在类型初始化期间被调用。如果使用-target 1.5(或更高版本),常量池将获得一个“类”条目

有关更多详细信息,请参阅Java语言规范的第15.8.2节

  • 在java中,有一个称为“class”的类,它表示类和接口
  • 有几种方法可以获取类“class”的实例。请看一下java.lang.Class文档。
    • Class.forName(字符串类名称)
    • obj.getClass()-obj是任何类实例
    • Sample.class-Sample是一个类
  • 您正在使用第3个方法获取类“Sample”的实例
  • 在java中,有一个称为“class”的类,它表示类和接口
  • 有几种方法可以获取类“class”的实例。请看一下java.lang.Class文档。
    • Class.forName(字符串类名称)
    • obj.getClass()-obj是任何类实例
    • Sample.class-Sample是一个类
  • 您正在使用第3个方法获取类“Sample”的实例

  • 直截了当的解释没有太多废话+1感谢您的更正,但如果我可以进一步询问Sample.class与Sample Sample=new Sample()之类的初始化有多大不同,简单的解释没有太多赘述+1感谢您的更正,但如果我可以进一步询问Sample.class与Sample Sample=new Sample()之类的初始化有多大不同