`

普通内部类

    博客分类:
  • Java
 
阅读更多
//贴点代码

public class InnerClass {
	/*
	 * 内部类的优点1:对外可以隐藏内部类的名称,体现了封装性
	 *        优点2:可以通过内部类实现多个接口,使代码更清晰
	 *        优点3:内部类可以访问外部类的变量,但是不可以修改
	 *  有四种内部类:1,普通内部类;2,静态内部类;3,局部内部类;4,匿名内部类
	 */
      //普通内部类
	int n=3;
	private class AA implements A{
            private int i=2;
		@Override
		public int value() {
			System.out.println(n*i);
			return i;
		}
		
	}
	protected class BB implements B {
        String bString;
        BB(String bString){
        	this.bString=bString;
        }
		@Override
		public String print() {
			System.out.print(bString);
			return bString;
		}
		
	}
	public A a(){
		return new AA();
	}
	public B b(String bString){
		return new BB(bString);
	}

public class Test {

	/**
	 * @param args
	 *
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String bString="88888";
     InnerClass innerClass=new InnerClass();
     A aa=innerClass.a();
     aa.value();
     B bb=innerClass.b(bString);
     bb.print();
	}

}

public interface A {
     int   value();
}
public interface B {
   String print();
}

分享到:
评论

相关推荐

    Java ---- 局部内部类 静态内部类 普通内部类

    Java ---- 局部内部类 静态内部类 普通内部类

    内部类的相关知识-静态内部类,匿名内部类……

    静态内部类的实例创建与普通内部类不同,可以直接使用 `new 外部类.静态内部类()` 的形式创建实例,而无需先创建外部类的实例。例如: ```java public class CreateStaticInnerInstance { public static void main...

    java静态内部类(嵌套类)

    与普通内部类相比,静态内部类具有以下显著特点: 1. **创建对象无需依赖外部类**:这是静态内部类最为关键的一个特征。也就是说,我们可以在不创建外部类对象的情况下,直接创建静态内部类的对象。 ```java ...

    接口中的内部类.pdf

    在这个例子中,`IMyInterface`包含了一个名为`TInnerClass`的普通内部类。`TClassDemo`实现了`IMyInterface`,因此它可以创建`TInnerClass`的对象,并通过`GetInnerInstance`方法返回这个内部类的实例。这样,`...

    Java中的内部类应用举例

    1. **普通内部类**:这是最常见的一种内部类形式,它被定义在一个类的内部,但不是在任何方法或代码块内。这种类型的内部类可以访问其外围类的所有成员,包括私有成员。 2. **局部内部类**:局部内部类是在方法体或...

    JavaDemo14032003(内部类).zip

    本JavaDemo14032003的压缩包文件着重展示了内部类的基本用法,包括普通内部类、匿名内部类以及它们的应用场景。 首先,我们来了解一下**普通内部类**。普通内部类是定义在另一个类的定义体内的类,它可以作为外部类...

    11.内部类.doc

    静态内部类与普通内部类的区别在于,它可以直接通过外部类的类名进行访问,无需外部类的对象。静态内部类不能直接访问外部类的非静态成员,但可以访问外部类的静态成员和方法。例如,在示例1中,`...

    java内部类应用详解

    3. **静态内部类**:静态内部类与普通内部类的区别在于,静态内部类可以像普通Java类一样拥有静态成员和静态方法,且不依赖于外部类的实例。但是,静态内部类仍然可以访问外部类的静态成员和非静态成员。 4. **匿名...

    Java内部类基础笔记

    本篇笔记将详细介绍Java中的四种内部类:普通内部类、静态内部类、方法内部类以及匿名内部类。 ### A. 普通内部类 普通内部类(也称为成员内部类)是定义在外部类的成员位置,如同字段一样。它们可以直接访问外部...

    内部类的意义

    6. **静态内部类**:静态内部类与普通内部类不同,它不持有对外部类的引用,因此可以像普通类一样被实例化,也可以有静态成员。这在不需要访问外部类实例的情况下非常有用,例如作为工具类或辅助类。 7. **关联关系...

    java内部类总结.pdf

    1. 普通内部类:这是最常见的形式,内部类的声明与类成员平级。 2. 方法内部类:定义在某个方法内部的类,只在该方法的作用域内可见。 3. 匿名类:没有名称的内部类,通常用于快速实现接口或抽象类的简短实例化。 4....

    java学习笔记(内部类)汇集

    1. **普通内部类**:最基础的内部类形式。 2. **局部内部类**:在某个方法或构造函数内部定义的内部类。 3. **匿名内部类**:没有名字的内部类,通常用于实现接口或继承父类,并立即创建其实例。 4. **静态内部类**...

    Java内部类总结.pdf

    1. **普通内部类(成员内部类)**:这是最常见的内部类类型,定义在外部类的成员位置,与方法和变量平级。 2. **方法内部类**:定义在某个方法内部的类,其生命周期仅限于该方法的执行期间。 3. **匿名内部类**:...

    java内部类解析.......

    这意味着它们可以拥有静态成员,而普通内部类则不可以。 #### 匿名内部类的使用 匿名内部类主要用于即时定义和创建对象,特别是在事件处理、回调函数等场合。它们通常用来实现接口或继承类,同时立即创建一个该类...

    【IT十八掌徐培成】Java基础第05天-02.final-内部类.zip

    4. 静态内部类:静态内部类与普通内部类的主要区别在于,它可以像静态成员一样,不依赖于外部类的实例就能创建对象。但是,由于它是内部类,仍然可以访问外部类的静态成员,但不能访问非静态成员。 在Java中,内部...

    Java内部类

    静态内部类与普通内部类的区别在于,静态内部类不持有对外部类的引用,因此它可以独立存在,无需外部类的实例就能创建。此外,静态内部类可以通过外部类的类名直接访问,而不需要外部类的实例。 ```java public ...

    内部类 匿名内部类 内部接口 对比说明

    内部类是Java编程语言中的一种特性,它允许我们在一个类的内部定义另一个类。这种设计模式在Android开发中尤其常见,因为它可以有效地管理代码和实现特定的功能。本文将详细探讨内部类、匿名内部类以及内部接口的...

    Java 中包的概念,类的说明符与内部类20

    静态内部类与普通内部类的区别在于它可以有自己的静态成员,并且不需要外部类的实例就能创建。 "JAVA从入门到精通"这个课程可能详细讲解了这些概念,并通过孙鑫老师的主讲,深入浅出地介绍了Java的基础和进阶知识。...

    java 内部类使用(内部匿名类)

    1. **成员内部类**:成员内部类就像是外部类的一个普通成员,可以是静态或非静态的。非静态内部类拥有对外部类的引用,可以直接访问外部类的所有成员,包括私有成员。而静态内部类不持有对外部类的引用,因此只能...

    浅谈内部类与静态内部类的应用

    与普通成员内部类不同,静态内部类不持有对外部类的引用,因此不能直接访问外部类的非静态成员。静态内部类需要通过外部类名.静态内部类名的方式来创建对象,这与访问任何其他静态成员的方式相同。这种特性使得静态...

Global site tag (gtag.js) - Google Analytics