小编Ari*_*aha的帖子

Java getConstructor()方法

import java.util.*;
import java.text.*;
import java.lang.reflect.*;

public class Test {
String name;
public Test()
{
System.out.println("In Construtor");
}
public Test(String name)
{
this.name=name;
System.out.println("In Construtor paramitarized-----"+name);
}

public int q() {
    System.out.println("working");
    return 1;

}
public static void main(String args[] ) throws Exception {
    Class c=Class.forName("Test");
    Test t=(Test)c.newInstance();
    t.q();
    Constructor cons[]=c.getConstructors();
    for(Constructor ci:cons)
    ci.newInstance();
    Constructor<?> pcon=c.getConstructor(String.class);
    pcon.newInstance();
    System.out.println(Test.class.getName());
    }
}
Run Code Online (Sandbox Code Playgroud)

我只是尝试掌握Class和ClassLoader类的概念.现在为这一行Constructor<?> pcon=c.getConstructor(String.class);显示IllegalArgumentException:为什么?

谢谢你Jon Skeet :)我改变了我的代码和它的工作

Class c=Class.forName("Test");
        Test t=(Test)c.newInstance();
        t.q();


        Constructor<?> pcon=c.getConstructor(String.class);
        pcon.newInstance("arijit");
        System.out.println(Test.class.getName());
Run Code Online (Sandbox Code Playgroud)

但是当我使用-Xlint编译时,它给出了下面提到的警告:取消选中调用getConstructor(java.lang.Class ....)作为原始类型java.lang.Class的成员

这是什么意思?

java

2
推荐指数
1
解决办法
896
查看次数

空格从String中删除

#include<stdio.h>
#include<string.h>

int main(){
    char array[]="Arijit Saha Student";
    spaceremover(array);
    getch();
    return 1;
}

int spaceremover(char a[]){
    int i;
   // printf("L=%d",strlen(a));
    char final[strlen(a)+1];
    int count=0;
    for(i=0;i<strlen(a);i++)
    {
        if(a[i]!=' ')
            final[count]=a[i];
        count++;
    }
    final[count]='\0';
    int j=0;
    for(j=0;j<strlen(final);j++)
    printf("%c",final[j]);
    // printf("\n%s",final);
    return 1;
}
Run Code Online (Sandbox Code Playgroud)

使用此示例代码输出Arijit.Saha,但我想要的输出是ArijitSahaStudent.为什么我得错了输出?在哪里.来自哪里?

c

0
推荐指数
1
解决办法
157
查看次数

标签 统计

c ×1

java ×1