class 外部类{
private static String 外部类私有变量="Hello";
class 内部类{
private String 内部类私有变量="World";
public void 输出() {
System.out.println(外部类.this.外部类私有变量);
System.out.println(外部类.内部类.class);
}
}
static class 静态内部类{
public void 输出() {
System.out.println(外部类私有变量.concat("中国"));
}
}
public void 外部类测试() {
内部类 内部类对象=new 内部类();
内部类对象.输出();
System.out.println(内部类对象.内部类私有变量);
}
public static void 外部类方法() {
System.out.println("外部类方法:"+外部类私有变量.concat("中国"));
}
}
public class T7 {
public static void main(String[] args) throws ClassNotFoundException {
//这里的测试方法着重演示反射的机制。
外部类 外部对象=new 外部类();
System.out.println("外部类全名:"+外部对象.getClass().getName());
System.out.println("外部类类名:"+外部对象.getClass().getSimpleName());
//getclass必须实例化才能调用
外部对象.外部类测试();//1、对象调用方法
外部类.外部类方法();//2、类名直接调用方法。
System.out.println("外部类.class获得的类名:"+外部类.class.getSimpleName());
System.out.println("内部类的全名:"+外部类.内部类.class.getName());
System.out.println("类T7的全名:"+Class.forName("T7").getName());
}
}
根据李兴华老师的代码改变,大家测试一下运行结果。这个也解释了java经典面试题:
1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?
可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。
求助,知道class.forName 重要,可是此处却报错,找不到。有明白的同学吗?
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦