import com.hpe.dome2.Demo.Inner;;
/*
* 内部类的测试
*/
public class Demo1 {
//主函数只能在这个类里面写
public static void main(String[] args) {
Demo d=new Demo();
d.fun();
//导入这个类的包就可以在外部类中,将外部嵌套的类当作一个目录
Inner inner=new Inner();
inner.print();
}
}
//这种事外部类,Demo1和Demo无关系
//内部类演示
class Demo{
private String str="外部类中的字符串";
static class Inner{
private String inStr="内部类中的字符串";
//静态内部类无法调用,非静态的外部参数
public void print(){
// System.out.println(str);
System.out.println("内部类打印");
}
}
public void fun(){
//在嵌套类中创建内部类对象
Inner i=new Inner();
i.print();
}
}
运行截图
public class Demo3 {
public static void main(String[] args) {
print();
test();
}
public static void print(){
//实现Inter接口,定义一个类,匿名
//因为匿名类没有名称所以不能实例化,只能在创建的时候完成调用
new Inter(){
@Override
public void test() {
System.out.println("hhh");
}
}.test();
}
public static void test(){
//方法中的内部类实现,1---n的累加
class Xxx{
public void sum(int n){
int count=0;
for(int i=1;i<=n;i++){
count+=i;
}
System.out.println(count);
}
}
Xxx x=new Xxx();
x.sum(100);
}
}
interface Inter{
void test();
}
运行截图