javase内部类的使用

package zhang.javase.TestInner;

/**

  • 内部类的使用方法
  • @作者:小章鱼
    *1.内部类分成成员内部类,和局内部类(在内部类中也可以有属性和方法,以及构造器)
    *1.成员内部类:定义在外部内里面,在方法的外面
  •  >>静态的成员内部类
    
  •  >>非静态的成员内部类
    

*2.局部内部类:声明在外部类的方法中
*
*掌握3点:
*1.创建静态的成员内部类
*2.创建非静态的成员内部类
*3.在内部中调用外部类中的属性和方法,和内部类中的属性和方法
*/
//注意点:内部类定义在成员位置上,可以被private、static成员修饰符修饰。被static修饰的内部类只能访问外部类中
//的静态成员。

public class Testinner {
public static void main(String[] args) {
//创建一个静态的内部类对象
Person.Home h= new Person.Home();
//创建一个非静态的内部类
/*
* 1.先创建外部类的对象
* 2.在根据外部的对象,创建一个内部类对象
*/
Person person=new Person();
Person.Home2 h2= person.new Home2();
h2.print();

}

}
class Person{
private int age;
private String name;
//成员静态内部类
static class Home{
int size;
int location;
public Home(){

	}
	public Home(int size ,int location){
		this.size=size;
		this.location=location;
	}
	public void print(){

// show();在静态类的方法中只能调用静态的方法,static修饰的类先加载不能,而不能调用晚的
}
}
//成员非静态的内部类
class Home2{
public void print(){
show();
}

}
//方法
public void show(){
	class Bird{
		String name;
		int id;
		public Bird(){
			
		}
	}
	System.out.println("我是外部类的方法");
}

}

猜你喜欢

转载自blog.csdn.net/qq_43257103/article/details/88173614