Java 关于类型类、this.getClass()的理解
来源:互联网 发布:淘宝商品佣金查询 编辑:程序博客网 时间:2024/06/16 03:42
import java.io.*;import java.util.*;class test {public static void main (String[] args) throws java.lang.Exception{ B b=new B(); Object c=b.getClass(); String d=b.getClass().getName(); System.out.println(c);//因为都有toString()所以动态绑定了 System.out.println(d);}}class A{ int x; int y; A() { // Scanner input=new Scanner(System.in); x=10; y=9; //input.Close(); } public void Add() { System.out.println(x+y); }}class B extends A{ public void Add() { System.out.println(x*y); } public void TES() { super.Add(); this.Add(); } }
Java语言中,每个类都有一个函数是getClass(),这个函数可以返回该保存该类型的类型类的一个实例的引用,这个类型类的实例无法直接接受但是我们可以用Object接收,
在println()的时候打印出的是Class B说明这个类型类已经将toString()函数重写,因此打印出来的是Class B。
以下是引用的部分:来源http://blog.sina.com.cn/s/blog_6f8856f30102w1bo.html
在获得类型类之后,你就可以调用其中的一些方法获得类型的信息了,主要的方法有:
getName():String:获得该类型的全称名称。
getSuperClass():Class:获得该类型的直接父类,如果该类型没有直接父类,那么返回null。
getInterfaces():Class[]:获得该类型实现的所有接口。
isArray():boolean:判断该类型是否是数组。
isEnum():boolean:判断该类型是否是枚举类型。
isInterface():boolean:判断该类型是否是接口。
isPrimitive():boolean:判断该类型是否是基本类型,即是否是int,boolean,double等等。
isAssignableFrom(Class cls):boolean:判断这个类型是否是类型cls的父(祖先)类或父(祖先)接口。
getComponentType():Class:如果该类型是一个数组,那么返回该数组的组件类型。
此外还可以进行类型转换这类的操作,主要方法有:
asSubclass(Class clazz):Class:将这个类型
- Java 关于类型类、this.getClass()的理解
- 关于getClass()方法的理解
- java 用getClass()获取对象的类型类
- java 用getClass()获取对象的类型类
- super.getClass()与this.getClass()的问题
- super.getClass()与this.getClass() 的区别
- java getClass() 理解 详解
- 【java】深入理解getClass()
- 【JAVA】【问题】关于getclass()的使用
- java 关于getClass().getClassLoader()
- 关于java中getClass()和super.getClass()
- 关于this.getClass().getSuperClass().getName()与super.getClass()
- 关于this.getClass().getResourceAsStream()来读入数据!~
- this.getclass()
- java this 的理解
- java的Class类及getClass()函数
- java的getClass()函数
- java的getClass()函数
- 利用 双向循环链表 实现通讯录的功能
- Problem D: 质心算法
- 问题 D: 年终奖金
- PCLK,VSYNC和HSYNC的关系
- 14. Longest Common Prefix
- Java 关于类型类、this.getClass()的理解
- 数位DP HDU3555+CF55D+HDU2089
- [LeetCode
- MySQL存储引擎
- 链表排序
- JAVA传入换行属性
- nyoj-20 吝啬的国度
- 搜索 G题
- LeetCode300. Longest Increasing Subsequence