怎样在一个类的内部获得这个类的对象的名字

怎样在一个类的内部获得这个类的对象的名字,第1张

只能获取类名,不可能获取对象名字。对象this到了方法内部就不在保存名称,而是一个标示符放在@后面:

如:

public class Test {

public static void main(String[] args) {

class A {

public void getRealName() {

//这里能获得A的对象名字b吗?

Systemoutprintln(thistoString());

}

}

A b = new A();

bgetRealName();

}

}

这里会输出:Test$1A@7150bd4d

其中7150bd4d就是你这对象b的标示

Dim Object As Object '这是合法的,别问为什么

Print TypeName(Object) ' "Nothing"

Set Object = CreateObject("WScriptShell")

Print TypeName(Object) ' "IWshShell3"

试试。

var dom = $("class") 首先通过这个方法就可以获取到此class的对象然后可以通过domid获取到对应的ID,这个方式首先要保证此class只应用于一个dom对象

如果有多个则可以通过

$("class")each(function(){

//循环列表,然后通过dom特效去找到指定的dom例如:

if(thistagName="INPUT"){

alert(按钮);

}

})

package comloonewfweb;  

  

import orgspringframeworkbeansBeansException;  

import orgspringframeworkbeansfactoryNoSuchBeanDefinitionException;  

import orgspringframeworkcontextApplicationContext;  

import orgspringframeworkcontextApplicationContextAware;  

  

  Spring ApplicationContext 获取spring容器中的实例bean 

  @author ruilinxie 

  

 /  

public class WebContextFactoryUtil implements ApplicationContextAware  

{  

    / 

      Spring 应用上下文环境 

     /  

    private static ApplicationContext applicationContext;  

  

    / 

      实现ApplicationContextAware接口的回调方法,设置上下文环境 

       

      @param applicationContext 

      @throws BeansException 

     /  

    @SuppressWarnings("static-access")  

    public void setApplicationContext(ApplicationContext applicationContext)  

            throws BeansException  

    {  

        thisapplicationContext = applicationContext;  

    }  

  

    / 

      @return ApplicationContext 

     /  

    public static ApplicationContext getApplicationContext()  

    {  

        return applicationContext;  

    }  

  

    / 

      获取对象 

       

      @param name 

      @return Object bean的实例 

      @throws BeansException 

     /  

    public static Object getBean(String beanName) throws BeansException  

    {  

        if (!WebContextFactoryUtilcontainsBean(beanName))  

        {  

            return null;  

        } else  

        {  

            return applicationContextgetBean(beanName);  

        }  

    }  

  

    / 

      获取类型为requiredType的对象 

      如果bean不能被类型转换,相应的异常将会被抛出(BeanNotOfRequiredTypeException) 

       

      @param name 

                 bean注册名 

      @param requiredType 

                 返回对象类型 

      @return Object 返回requiredType类型对象 

      @throws BeansException 

     /  

    @SuppressWarnings({ "unchecked", "rawtypes" })  

    public static Object getBean(String name, Class requiredType)  

            throws BeansException  

    {  

        return applicationContextgetBean(name, requiredType);  

    }  

  

    / 

      如果BeanFactory包含一个与所给名称匹配的bean定义,则返回true 

       

      @param name 

      @return boolean 

     /  

    public static boolean containsBean(String name)  

    {  

        return applicationContextcontainsBean(name);  

    }  

  

    / 

      判断以给定名字注册的bean定义是一个singleton还是一个prototype。 

      如果与给定名字相应的bean定义没有被找到,将会抛出一个异常(NoSuchBeanDefinitionException) 

       

      @param name 

      @return boolean 

      @throws NoSuchBeanDefinitionException 

     /  

    public static boolean isSingleton(String name)  

            throws NoSuchBeanDefinitionException  

    {  

        return applicationContextisSingleton(name);  

    }  

  

    / 

      @param name 

      @return Class 注册对象的类型 

      @throws NoSuchBeanDefinitionException 

     /  

    @SuppressWarnings("rawtypes")  

    public static Class getType(String name)  

            throws NoSuchBeanDefinitionException  

    {  

        return applicationContextgetType(name);  

    }  

  

    / 

      如果给定的bean名字在bean定义中有别名,则返回这些别名 

       

      @param name 

      @return 

      @throws NoSuchBeanDefinitionException 

     /  

    public static String[] getAliases(String name)  

            throws NoSuchBeanDefinitionException  

    {  

        return applicationContextgetAliases(name);  

    }  

  

}

java是不支持在运行中进行强制转化的! 如果事先知道类型,可以通过强制转化实现! 如果不知道! 可以采用这种方式!

String className = objgetClass()getName(); 得到类名

然后:

A a = (A)ClassforName(className)newInstance();

//上面这句话的意思是,forName(className):静态加载className这个类;

// newInstance(),实例化一个对象

// A 代表你知道的这人类或者这个类的父类, 把强制转化成你所要的对象。

这和你

A a = new A();

是一样的效果!

java是不支持在运行中进行强制转化的! 如果事先知道类型,可以通过强制转化实现! 如果不知道! 可以采用这种方式! \x0d\String className = objgetClass()getName(); 得到类名\x0d\然后:\x0d\A a = (A)ClassforName(className)newInstance(); \x0d\//上面这句话的意思是,forName(className):静态加载className这个类; \x0d\// newInstance(),实例化一个对象\x0d\// A 代表你知道的这人类或者这个类的父类, 把强制转化成你所要的对象。\x0d\这和你 \x0d\A a = new A(); \x0d\是一样的效果!

1、Test t = new Test()Class clazz = tgetClass()Systemoutprintln(clazzgetCanonicalName())Systemoutprintln(clazzgetSimpleName())

2、public class TestReflect {public static void main(String[] args) throws Exception {TestReflect testReflect = new TestReflect()Systemoutprintln(testReflectgetClass()getName())// 结果 netxsoftlabbaikeTestReflect}}

3、Java程序

以上就是关于怎样在一个类的内部获得这个类的对象的名字全部的内容,包括:怎样在一个类的内部获得这个类的对象的名字、VB如何获取对象的类名、jquery 怎么根据 一个dom对象的class 得到这个对象的id等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9739408.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存