内部类穿件和初始化

创建方式1   内部类是非静态的

package com.rl.innerclass;

public class OuterClass {
	private int a;
	private String age;
	static String gender;
	class InnerClass{
		private String password;
		//static String gender1;   要报错(类加载的原因  内部类是一个非静态的   需要new  出来才能初始化,   如果此时用静态的变量不满足这一条件)

		public String getPassword() {
			return password;
		}

		public void setPassword(String password) {
			this.password = password;
		}
		
	}
	public int getA() {
		return a;
	}
	public void setA(int a) {
		this.a = a;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	
}

  

初始化的方式:

(1)  创建外部类   外部类  变量名(out自己指定)=new  外部类();

(2)  内部类创建   外部类.内部类  变量名(in)  =out.new   内部类();

public static void main(String[] args) {
		OuterClass out=new OuterClass();
	
		OuterClass.InnerClass in=out.new InnerClass();
		in.setPassword("zhang");
		System.out.println(in.getPassword());
	}

  

创建方式2   内部类是非静态的

类的定义如下:

package com.rl.innerclass;

public class OuterClass2 {
	private int a;
	private String age;
	static String gender;
	static class InnerClass{
		static String gender1;
		private String password;

		public String getPassword() {
			return password;
		}

		public void setPassword(String password) {
			this.password = password;
		}
		
	}
	public int getA() {
		return a;
	}
	public void setA(int a) {
		this.a = a;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	
}

  初始化方式如下:

  

public static void main(String[] args) {
		OuterClass2.InnerClass in=new OuterClass2.InnerClass();
		in.setPassword("zhang");
		System.out.println(in.getPassword());

  

猜你喜欢

转载自www.cnblogs.com/MyJavaStudy/p/9116508.html
今日推荐