- 浏览: 80658 次
- 性别:
- 来自: 湖南
最新评论
-
lysvanilla:
补充: 对于action返回input的补充,查阅源代 ...
No result defined for action and result input
普通内部类,静态内部类代码
- /**
- * 普通内部类、静态内部类
- */
- package org.sean.module03.inner_class;
- /**
- * @author 不落的太阳(Sean Yang)
- */
- public class InnerClass1 {
- private String name = "outer";
- private static int i = 10;
- static {
- System.out.println("outer_class static block");
- }
- {
- System.out.println("outer_class init block");
- }
- /** 普通内部类 */
- public class MyInnerClass {
- private String name = "inner";
- /**
- * 此处的静态代码块是错误的,因为普通内部类相当于外部类中的一个属性(方法)
- *
- * 内部类中的属性和方法相当于局部变量,因此不能使用static关键字
- *
- * static { System.out.println("inner_class static block"); }
- */
- {
- System.out.println("inner_class init block");
- }
- public MyInnerClass() {
- System.out.println("inner_class constructor");
- }
- public void method2() {
- System.out.println("inner_class method2");
- }
- public void test() {
- System.out.println(name);
- System.out.println(this.name);
- /** 调用外部类的同名属性 */
- System.out.println(InnerClass1.this.name);
- }
- }
- /** 静态内部类 */
- static class StaticClass {
- static {
- System.out.println("static_class static block");
- }
- {
- System.out.println("static_class init block");
- }
- public StaticClass() {
- System.out.println("static_class constructor");
- }
- public void method3() {
- InnerClass1.i = 40;
- System.out.println(InnerClass1.i);
- }
- }
- public InnerClass1() {
- System.out.println("outer_class constructor");
- }
- public void method1() {
- System.out.println("outer_class method1");
- }
- }
/** * 普通内部类、静态内部类 */ package org.sean.module03.inner_class; /** * @author 不落的太阳(Sean Yang) */ public class InnerClass1 { private String name = "outer"; private static int i = 10; static { System.out.println("outer_class static block"); } { System.out.println("outer_class init block"); } /** 普通内部类 */ public class MyInnerClass { private String name = "inner"; /** * 此处的静态代码块是错误的,因为普通内部类相当于外部类中的一个属性(方法) * * 内部类中的属性和方法相当于局部变量,因此不能使用static关键字 * * static { System.out.println("inner_class static block"); } */ { System.out.println("inner_class init block"); } public MyInnerClass() { System.out.println("inner_class constructor"); } public void method2() { System.out.println("inner_class method2"); } public void test() { System.out.println(name); System.out.println(this.name); /** 调用外部类的同名属性 */ System.out.println(InnerClass1.this.name); } } /** 静态内部类 */ static class StaticClass { static { System.out.println("static_class static block"); } { System.out.println("static_class init block"); } public StaticClass() { System.out.println("static_class constructor"); } public void method3() { InnerClass1.i = 40; System.out.println(InnerClass1.i); } } public InnerClass1() { System.out.println("outer_class constructor"); } public void method1() { System.out.println("outer_class method1"); } }
局部内部类
- /**
- * 局部内部类
- */
- package org.sean.module03.inner_class;
- /**
- * @author 不落的太阳(Sean Yang)
- */
- public class InnerClass2 {
- private String name;
- public void method1(final int i) {
- /** 局部内部类 */
- class LocaleInnerClass {
- public void method2() {
- System.out.println(name);
- System.out.println(i);
- }
- }
- LocaleInnerClass innerClass = new LocaleInnerClass();
- innerClass.method2();
- }
- }
/** * 局部内部类 */ package org.sean.module03.inner_class; /** * @author 不落的太阳(Sean Yang) */ public class InnerClass2 { private String name; public void method1(final int i) { /** 局部内部类 */ class LocaleInnerClass { public void method2() { System.out.println(name); System.out.println(i); } } LocaleInnerClass innerClass = new LocaleInnerClass(); innerClass.method2(); } }
匿名内部类
- /**
- * 匿名内部类
- */
- package org.sean.module03.inner_class;
- /**
- * @author 不落的太阳(Sean Yang)
- */
- class Popcorn {
- public void pop() {
- System.out.println("popcorn execute");
- }
- }
- class PPcorn extends Popcorn {
- @Override
- public void pop() {
- System.out.println("innerClass3 execute");
- }
- }
- public class InnerClass3 {
- @SuppressWarnings("unused")
- private Popcorn pp = new PPcorn();
- @SuppressWarnings("unused")
- private Popcorn popcorn = new Popcorn() {
- @Override
- public void pop() {
- System.out.println("innerClass3 execute");
- }
- };
- }
/** * 匿名内部类 */ package org.sean.module03.inner_class; /** * @author 不落的太阳(Sean Yang) */ class Popcorn { public void pop() { System.out.println("popcorn execute"); } } class PPcorn extends Popcorn { @Override public void pop() { System.out.println("innerClass3 execute"); } } public class InnerClass3 { @SuppressWarnings("unused") private Popcorn pp = new PPcorn(); @SuppressWarnings("unused") private Popcorn popcorn = new Popcorn() { @Override public void pop() { System.out.println("innerClass3 execute"); } }; }
- /**
- * 匿名内部类
- */
- package org.sean.module03.inner_class;
- /**
- * @author 不落的太阳(Sean Yang)
- */
- interface Inner {
- public abstract void inner();
- }
- public class InnerClass4 {
- public void test(Inner inner) {
- System.out.println("Anonymous class");
- }
- public static void main(String[] args) {
- InnerClass4 innerClass = new InnerClass4();
- innerClass.test(new Inner() {
- public void inner() {
- System.out.println("interface inner");
- }
- });
- }
- }
/** * 匿名内部类 */ package org.sean.module03.inner_class; /** * @author 不落的太阳(Sean Yang) */ interface Inner { public abstract void inner(); } public class InnerClass4 { public void test(Inner inner) { System.out.println("Anonymous class"); } public static void main(String[] args) { InnerClass4 innerClass = new InnerClass4(); innerClass.test(new Inner() { public void inner() { System.out.println("interface inner"); } }); } }
测试代码
- /**
- * 测试内部类
- */
- package org.sean.module03.inner_class;
- /**
- * @author 不落的太阳(Sean Yang)
- */
- public class TestInner {
- public static void main(String[] args) {
- /** 普通内部类产生对象的方式 */
- InnerClass1.MyInnerClass innerClass1 = new InnerClass1().new MyInnerClass();
- innerClass1.method2();
- innerClass1.test();
- /** 静态内部类产生对象的方式 */
- InnerClass1.StaticClass staticClass = new InnerClass1.StaticClass();
- staticClass.method3();
- InnerClass2 innerClass2 = new InnerClass2();
- innerClass2.method1(10);
- }
- }
/** * 测试内部类 */ package org.sean.module03.inner_class; /** * @author 不落的太阳(Sean Yang) */ public class TestInner { public static void main(String[] args) { /** 普通内部类产生对象的方式 */ InnerClass1.MyInnerClass innerClass1 = new InnerClass1().new MyInnerClass(); innerClass1.method2(); innerClass1.test(); /** 静态内部类产生对象的方式 */ InnerClass1.StaticClass staticClass = new InnerClass1.StaticClass(); staticClass.method3(); InnerClass2 innerClass2 = new InnerClass2(); innerClass2.method1(10); } }
发表评论
-
Java实例开发01-01 屏幕捕获工具
2011-09-09 16:07 990知识点: 1.Swing (使用eclipse插件Jiglo ... -
Java实例开发01-02 文本阅读器
2011-09-09 16:04 1123这次采用的是SWT开发的,利用了Jigloo插件 知识 ... -
Java删除文件和目录
2011-09-08 15:02 870package book.io; ... -
实例解析:在Java语言中对文件操作大全
2011-09-07 22:50 882一.获得控制台用户 ... -
JAVA的文件操作
2011-09-07 22:30 92911.3 I/O类使用 由于在IO ... -
Java SE 学习笔记04
2011-09-01 10:00 884★内部类(inner class)内部类又称嵌套类,是指定 ... -
Java SE 学习笔记03 代码
2011-09-01 09:59 796关于父类与子类在属性 ... -
Java SE 学习笔记03
2011-09-01 09:59 784面向对象基础 ★面向对象强调数据结构第一,算法第二 ... -
Java SE 学习笔记02 代码
2011-09-01 09:58 789数组相关API Java代码 / ... -
Java SE 学习笔记02
2011-09-01 09:57 731★数组JAVA中的数组是一个具有相同类型元素的有序集合,数 ... -
Java SE 学习笔记01 代码
2011-09-01 09:56 906Java中的基本数据类型 Java代码 ... -
Java SE 学习笔记01
2011-09-01 09:55 1587★JAVA的特性 Simple简单(去掉了C++中许多 ...
相关推荐
**JAVA SE学习笔记** 在Java SE(标准版)的学习中,我们主要关注的是Java编程语言的基础和核心特性,包括但不限于语法、数据类型、控制结构、类与对象、接口、异常处理、多线程、集合框架、输入/输出(I/O)系统、...
《java jdk 7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
【Java SE学习笔记详解】 Java SE(Standard Edition)是Java平台的核心部分,它为开发桌面应用、服务器端应用以及中间件提供了基础。本笔记主要基于MLDN(Microsoft Learning Dynamic Network)李兴华老师的2009年...
"Java学习资料"这个压缩包显然包含了一些关于Java SE(标准版)的基础学习资源,包括笔记和实际的演示案例代码项目。Java SE是Java的核心部分,主要用于桌面应用和服务器端开发。 在Java的学习过程中,笔记通常会...
这份"java se个人学习笔记"显然是一份对Java SE基础知识的详细记录,由一位初学者整理,旨在帮助其他初学者理解这个强大的编程语言。笔记中可能涵盖了以下几个关键知识点: 1. **基础语法**:Java的基本数据类型、...
《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
Java SE(标准版)是Java开发平台的核心部分,它提供了编写、运行和部署桌面应用程序所需的类库和工具。这份“非常详细JavaSE学习...无论你是初学者还是有经验的开发者,这份详尽的Java SE学习笔记都是一个宝贵的资源。
java SE 1.8笔记大纲 java SE 1.8是 Java 编程语言的标准版,本笔记涵盖了Java SE 1.8的所有知识点,从基本数据类型到...本笔记涵盖了 Java SE 1.8 的所有知识点,是一个非常完整和系统的 Java 编程语言学习资源。
计算机基础知识是学习计算机科学和技术的基础,它...总结来说,了解计算机基础知识对于深入学习Java SE或其他计算机编程语言是十分必要的。它不仅为我们打下坚实的理论基础,还能帮助我们更好地理解和使用计算机技术。
### 韩顺平编写的Java学习笔记概览 #### Java平台分类与运行机制 - **J2SE(Java 2 Platform, Standard Edition)**: 标准版Java开发平台,适用于桌面应用程序开发。 - **J2EE(Java 2 Platform, Enterprise ...
【JAVA SE 归档笔记】是一份由多位IT行业高手共同编撰的珍贵资料,旨在为初学者提供学习指引,并作为经验丰富的开发者们的参考手册。这份笔记深入浅出地涵盖了JAVA SE(Java Standard Edition)的核心知识点,对于...
●本书是作者多年来教学实践经验的总结,汇集了学员在学习课程或认证考试中遇到的概念、操作、应用等问题及解决方案, ●针对Java SE 8新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新, ●...
这个压缩包中包含的"java学习笔记JDK6课件和课本代码"是学习JDK 6.0的重要参考资料,可以帮助你深入理解Java编程的核心概念和实践技巧。 1. **Java基础**:Java是一种面向对象的编程语言,它的基础包括类、对象、...
此源代码使用Java SE(标准版)环境,可能涉及到Java的基础语法、类、对象、接口、异常处理、数据类型等。 2. **Swing库**:Java Swing库是用于构建GUI应用程序的组件集合。这个项目可能使用了JFrame、JButton、...
这些基本概念构成了Java SE编程的基础,理解并掌握它们对于编写高效、可靠的Java代码至关重要。通过这些知识,开发者可以创建复杂的数据结构,实现灵活的设计模式,并构建出具有强大功能的应用程序。
1. **Java环境搭建**:首先,学习Java SE需要安装Java Development Kit (JDK),设置好环境变量`JAVA_HOME`、`PATH`和`CLASSPATH`,以便于编译和运行Java程序。 2. **Java语法基础**:Java是一种面向对象的语言,其...