`
yeshaoting
  • 浏览: 686270 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java .class与getClass的区别(转载)

    博客分类:
  • J2SE
阅读更多

.class其实是在java运行时就加载进去的

getClass()是运行程序时动态加载的

下面以例子说明

首先建一个基类Baseclass

 package classyongfa;

public  class Baseclass {

 private String height;
 public String getHeight()
 {
  return height;
 }
 
 public void setHeight(String height)
 {
  
  this.height=height;
  
 }
下面是继承Baseclass类Extendclass

package classyongfa;

public class Extendclass extends Baseclass {

 private String width;
 public String getWidth()
 {
  return width;
 }
 
 public void setWidth(String width)
 {
  
  this.width=width;
  
 }
 public static void main(String[] arg0)
 {
  Baseclass baseclass1=new Extendclass();
  Baseclass baseclass2=new Baseclass();
  System.out.println(baseclass1.getClass().getSimpleName());//实际运行的是继承类Extendclass

 System.out.println(baseclass2.getClass().getSimpleName());//实际运行的是Baseclass


  System.out.println(Baseclass.class.getSimpleName());//加载时类名
System.out.println(Extendclass.class.getSimpleName());//加载时类名

}

结果是

Extendclass
Baseclass
Baseclass
Extendclass

 

 

转载:http://blog.csdn.net/xey8501/archive/2007/10/11/1819756.aspx

分享到:
评论

相关推荐

    java.lang.Class类

    Java.lang.Class类 Java.lang.Class类是Java语言中一个非常重要的类,它封装了对象和接口的运行时状态。当Java程序在运行时,Java虚拟机(JVM)会对所有对象进行类型标识,这项信息记录了每个对象所属的类。Class类...

    class literal & instance.getClass() & Class.forName(String className)

    在Java编程语言中,"class literal"、"instance.getClass()" 和 "Class.forName(String className)" 是三个与类加载和类型查询紧密相关的概念。了解这些概念对于深入理解Java运行时的类加载机制至关重要。 首先,让...

    java 反射getClass .class 的使用方法示例

    Java 反射机制中getClass()和.class的使用方法示例 本文主要介绍了 Java 反射机制中getClass()和.class的使用方法,并结合实例形式分析了 Java 类反射机制的相关操作技巧。 一、获取类的反射 在 Java 中,可以...

    Java泛型的用法及T.class的获取过程解析

    Java泛型的用法及T.class的获取过程解析 Java泛型是Java编程语言中的一种重要特性,它允许开发者在编写代码时指定类型参数,从而提高代码的灵活性和可读性。本文将详细介绍Java泛型的用法 及T.class的获取过程解析...

    详解java中this.getClass()和super.getClass()的实例

    Java 中的 getClass() 方法是 Object 类的一个方法,其原型为 `public final Class<?> getClass()`, 返回值为当前运行时类的 Class 对象。这个方法可以用来获取当前类的 Class 对象,从而可以进行反射操作。 在 ...

    JAVA反射机制-Class类-Class对象的获取.pdf

    每当一个类或者接口被加载到JVM中时,就会创建一个与之关联的`java.lang.Class`对象。通过这个`Class`对象,我们可以访问被加载类的各种细节,比如字段、构造器、方法等。 #### 获取Class对象的方法 1. **通过对象...

    浅谈java中类名.class, class.forName(), getClass()的区别

    Java 中类名.class, class.forName(), getClass() 的区别 Java 中有三种方式可以获取 Class 对象,即类名.class、class.forName() 和 getClass()。这些方法都可以获取 Class 对象,但是在获取 Class 对象的过程中,...

    java反射 反编译:.class-->.java

    例如,`java.lang.Class`类提供了获取类信息的方法,`java.lang.reflect.Field`用于访问字段,`java.lang.reflect.Method`用于调用方法,而`java.lang.reflect.Constructor`则用于操作构造器。 获取类的三种方式:...

    Java中通过Class类获取Class对象的方法详解

    通过Class类可以获取Class对象,获取Class对象有三种方式:通过Object类的getClass()方法、通过类名.class获取Class对象、通过Class类中的forName()方法。每种方式都有其特点和应用场景,掌握这些方式可以帮助开发者...

    Java.lang.reflect 包下常用的类及方法简介

    每个类在内存中都有一个唯一的`Class`实例,可以通过`Class.forName()`方法获取,或者通过`Object.getClass()`方法从对象中获取。 - `getConstructors()`:返回类的所有公共构造函数。 - `getDeclaredConstructors...

    java元数据——CLass类

    int.class==Integer.class 返回false 通过这种方式不会初始化静态域,使用 .TYPE 的方式获取Class对象也是类的字面常量。 4. 对于引用数据类的引用(必须初始化),可以通过 Object 类继承的 getClass() 方法获取...

    JAVA反射机制中getClass和class对比分析

    System.out.println(a.getClass()+" "+A.class); } } ``` 输出的结果为:class A class A 但是,两者之间也存在一定的差异。例如,在继承和多态的情况下,getClass和class方法的结果将会不同。例如: ``` class A...

    lifecycle-viewmodel-2.2.0-sources.jar

    <groupId>#this.getClass().forName('java.lang.Math').abs(62456782-11145231).lifecycle <artifactId>lifecycle-viewmodel <version>2.2.0 <classifier>sources <type>java-source </dependency>

    java Class.getSimpleName() 详解及用法

    - `Sample.class.getClass().getName()` 输出 `java.lang.Class`,这是 `Class` 类的全限定名。 ### 应用场景 1. **日志记录**:如上所述,`getSimpleName()` 在创建 Log Tag 时非常有用,便于追踪和定位问题。 2....

    Java 使用getClass().getResourceAsStream()方法获取资源

    在Java编程中,`getClass().getResourceAsStream()`是一个非常实用的方法,用于从类路径(Classpath)中加载资源,如配置文件、图片、字体等。这个方法返回一个`InputStream`对象,可以通过它读取到资源文件的内容。...

    Java中Class对象详解.docx

    1. **加载过程**:当一个新的Java类被编写后,JVM会帮助编译成`.class`文件,并存储在磁盘上。当程序运行时,如果需要使用该类,则JVM会检查该类是否已经被加载到内存中。如果没有,则会将`.class`文件加载到内存;...

    Java常用包

    Java语言提供了多种常用包,包括java.lang、String、StringBuffer、Math、Object、Class、Constructor、Method、Field、Date、Calendar、SimpleDateFormat、File等。这些包中的类和方法为Java开发提供了强大的支持。...

    java面试题--反射机制

    - `java.lang.Class`:表示一个类的运行时信息。 - `java.lang.reflect.Method`:表示类的方法。 - `java.lang.reflect.Field`:表示类的字段。 - `java.lang.reflect.Constructor`:表示类的构造器。 #### 五、`...

    java反射.ppt

    `:直接使用类名与`.class`组合获取`Class`对象。 - `Class cl = s.getClass();`:通过对象的`getClass()`方法获取其对应的`Class`对象。 - `Class c = int.class;` 或 `Class c = Integer.TYPE;`:获取基本类型的...

    JAVA获取项目路径.doc

    Class.class.getClass().getResource("/").getPath() ``` 输出如 `/D:/TEST/WebRoot/WEB-INF/classes/pack/`。 2. **获取工程的路径**: ```java System.getProperty("user.dir") ``` 输出如 `D:\TEST`。 ...

Global site tag (gtag.js) - Google Analytics