• 内部类创建和初始化


    创建方式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());
    

      

  • 相关阅读:
    DDOS工具介绍转载 规格严格
    MSB和LSB 规格严格
    Java 脚本 规格严格
    Derby配置总结(原创) 规格严格
    new ImageIcon(String filename)的路径问题 规格严格
    转载JNI(Windows) 规格严格
    C++ 0x新特性:详细讲解lambda表达式
    Linux信号量线程控制
    虚拟机VMware中安装 RedHateEL4(图解)
    2011年7月编程语言排行榜:COBOL五角大楼出品
  • 原文地址:https://www.cnblogs.com/MyJavaStudy/p/9116508.html
Copyright © 2020-2023  润新知