public class sdfbdf {
public sdfbdf()
{
System.out.println(getClass());
}
public static void main(String[] args) {
sdfbdf df=new sdfbdf();
System.out.println(df.getClass());
}
}
为什么把后面的df.getClass()改成this.getClass()就出错?
为什么构造方法内的getClass()不用对象就可以调用?
这是java的一个系统函数,从属于超类Object,任何一个类,都是Object的子类,不加对象直接调用此方法有一个默认的缺省值this。getClass() 等同于 this.getClass(),所以返回的类就是sdfbdf。
为什么类成员函数不能直接调用
首先,类不是对象,而是类型。它是声明了一种对象的类型,并不是一个实例化的对象。类中的函数不供对象调用的,而不是全局的。在你测试的例子中使用就有错误。A a;\/\/首先 你声明了一个A类型的对象a,但是并没有创建对象,(通俗理解也就是赋值)一般正确的创建对象的方法是A a = new A();(...
this.getclass ().getclassloader() .getresourceasstream(...)
您好,是这样的 JAVA里面对于类进行调用配置资源的文件数据,以this.getClass().getResourceAsStream()来读取比较合适。路径采用相对路径直接可以从工程的path路径去找。主要问题是如果类中采用的是静态块的话,则该this.getClass()报错,因为读静态块时,可能该对象并为构造,所以用this来指向当前对象不...
不要在构造函数中初始化任何变量”为什么
另外,程序不是一个类组成的,在实际工程中,有时候一个类的状态依赖于其他类的状态,你举例的GUI.Button方法可以看做设定了GUI类的内部状态,这个代码也不应该放在构造函数中(这个例子不好之处在于GUI类的方法只能在onGUI中调用,不能在任何其他地方,包括Awake中使用,如果换用一个其它全局变量可能更...
Java中,在构造方法里调用本类中的方法是不是可以省略this?
可以 Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final使用总结”一文中给出了明确解释。并且...
getclass方法
getClass() 返回此Object的运行时该对象的类,该方法返回一个Class对象, 可以通过该对象可以获取某个类的相关信息, 如构造方法、属性方法等。getClass()使用方式 1、首先new一个新对象 如 a 2、再通过 a.getClass() 来获取该对象 简单代码演示:1、Car.java package main; public ...
JAVA基础试题
1.不能。因为接口中的所有方法都是抽象的方法2.在继承关系中,要创建子类对象,构造方法会先调用其父类无参的构造方法,再调用子类的构造方法。需要注意的是:子类只能自动调用父类无参的构造方法,若要调用父类带参数的构造方法,需要用super关键字进行调用。 3.相同点:都不能直接实例对象,可以创建对象...
关于java this.getClass();
可以用.class返回此 Object 的运行时类Class对象,也可以用getClass()获得。获得此对象后可以利用此Class对象的一些反射特性进行操作,例如:this.getClass().newInstance(); \/\/用缺省构造函数创建一个该类的对象 this.getClass().getInterfaces(); \/\/获得此类实现的接口信息 this.getClass().get...
关于java编程的问题:一个类调用另一个类中构造方法中所定义的参数。
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略不去Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点 简单的来说构造函数就是用来创建对象用的,说的专业些叫实例化对象。定义:class A { public A(){} }...
JAVA中get方法可以这样用吗,为什么以下代码什么都没有显示出来(不用ge...
public static void main(String[] args){ new testhcd();} 改成如下程序:public static void main(String[] args){ testhcd t = new testhcd();\/\/在new 一个类的时候只会调用无参数的构造方法,这个类中调用的是默认的构造方法。JButton china = t.getChina();\/\/调用getChina()获得J...