一、内部类
内部类一般有以下几种:非静态成员内部类、局部内部类、静态成员内部类、匿名内部类。
1、非静态成员内部类:
public class Outer{
int i ;
.......
class Inner{ // 非静态成员内部类
}}
该内部类可以访问外部类的所有成员,包括private成员;如果外部类和内部类定义的属性同名,可以通过“外部类名.this.属性名”的形式访问。
该内部类实例化的途径有以下几种形式:
(1)通过外部类的非静态方法实例化内部类。 如,Inner in = new Inner();
(2)通过外部类的main方法实例化内部类。如Outer out = new Outer(); Outer.Inner in=out.new Inner();
即要通过外部类的引用实例化内部类对象;
(3)在内部类通过this来表示内部类的实例。
2、局部内部类
public class Outer{
private String name;
.......
public void display(){
class Inner{
//局部内部类}
}}
该内部类可以直接访问外部类的成员属性,在该内部类中如果要访问包含其方法的局部变量,则此变量必须是final的,由于该内部类中保存有外部类的引用outer.this,所以不能定义静态属性
3、静态内部类
public class Outer{
int i ;
.......
static class Inner{ // 静态成员内部类
static String name="LI";
int age;
.......
}}
这种内部类就相当于外部类,在其内部可申明静态或非静态成员。但静态内部类只能访问外部类的静态变量或方法。静态内部类可直接实例化:Outer.Inner in=new Outer.Inner();
4、匿名内部类多用于Swing事件处理
二、泛型(Generics) 详见http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf
三、Java Annotation(注解)
java.lang包中定义了三个基本注解:
1、@Override 重写父类方法
2、@Dprecated 表示已过时方法或成员
3、@SuppressWarnings 抑制编译器警告
自定义注解: publci @interface MyAnnotation{
String value() default "L";//定义一个属性
}
注解的注解(meta-annotation):
1、@Target 注解应用的目标 @Target(ElmeetType.Method)
2、@Retention 指示编译器如何对待自定义注解,有三种方式;
(1)编译器处理完后,不保留注解到编译后的类文件RententionPolicy.SOURCE
(2)将注解保留在编译后的类文件,但在运行时忽略RententionPolicy.CLASS
(3)将注解保留在编译后的类文件,并在第一次加载类时读取RententionPolicy.RUNTIME
3、@Documented 使用javadoc生产文档时是否忽略注解
4、@Inherited 父类注解是否被子类注解所继承
分享到:
相关推荐
在Java编程中,有几个常用的类对于开发人员来说是不可或缺的,这些类可以帮助我们处理数据库操作、页面分页以及过滤请求。下面将详细讲解标题和描述中提到的几个关键概念。 首先,`baseDao` 类是Java开发中的一个...
根据提供的资料,“Java李兴华学习笔记之Java常用类库”这份文档来源于北京MLDN软件实训中心的教学资料,主要涵盖了Java编程语言中常用类库的基础知识与实践技巧。课程内容分为两大部分: 1. **上次课程的主要知识...
"01Java基础部分重要知识"涵盖了Java学习的初步阶段,主要包括以下几个核心知识点: 1. **Java环境搭建**:首先,你需要了解如何安装Java Development Kit (JDK),设置环境变量如JAVA_HOME、PATH和CLASSPATH,以便...
Java的基础部分主要包括以下几个方面: 1. **语法基础**:Java的语法与C++类似,但更简洁。它包括变量声明、数据类型(如整型、浮点型、字符型、布尔型等)、运算符(算术、关系、逻辑、位等)、流程控制(如if语句...
Java基础知识部分总结 以下是对给定文件的知识点总结: 1. Java 类中的缺省的构造器 在 Java 中,如果一个类没有显式定义无参数的构造器,那么将有一个默认的缺省构造器。但是,如果定义了一个有参数的构造器,...
在PPT中,可能会涵盖以下几个关键主题: 1. **环境配置**:学习Java的第一步通常是安装Java Development Kit (JDK),设置环境变量如JAVA_HOME和Path,以及配置IDE(集成开发环境),如Eclipse或IntelliJ IDEA。 2....
首先,Java的基础部分通常涵盖以下几个核心概念: 1. **Java环境设置**:学习Java的第一步是安装JDK(Java Development Kit)并配置环境变量,包括JAVA_HOME、PATH和CLASSPATH,以便在命令行中执行Java程序。 2. *...
Java开发中的常用API是程序员日常工作中不可或缺的一部分,它包含了各种工具类、接口和类,用于实现各种功能。这里我们主要关注几个重要的API组件,包括W3CSchool的基础教程,MySQL5中文参考手册,jQuery 1.8.3的...
Java语言发展至今,可分为几个部分,如J2SE、J2EE和J2ME。J2SE是Java 2 Platform Standard Edition的缩写,它是学习Java的基础,提供了Java的核心API,用于开发和部署在桌面、服务器以及嵌入式环境中的Java应用程序...
虽然具体细节未给出,但可以推测这部分内容可能会涉及到以下几个方面: 1. **Android开发基础**:介绍Android SDK的基本使用,包括环境搭建、项目结构、UI设计等。 2. **Activity生命周期**:详细介绍Android中...
在您提供的信息中,"几个Java类"可能是指包含一些Java源代码文件(.java)的压缩包,这些文件可能定义了不同的类,用于实现特定的功能。尽管描述中提到这些类“价格性不高”且可能“太小”,但它们仍然是理解Java...
JDK的安装目录下有几个关键文件夹:bin包含各种工具命令,如javac用于编译Java源代码,java用于运行Java程序;jre是JRE的安装目录;lib包含工具APIs;demo包含示例程序;src.zip包含了核心类库的源代码。 为了让...
这份教程可能包含了以下几个关键的知识点: 1. **认识Java**:这部分通常会介绍Java的历史,由Sun Microsystems(现为Oracle)开发,以及Java为何在软件开发领域占据重要地位。还会解释Java的“一次编写,到处运行...
在Java编程中,基础练习通常包括以下几个方面: 1. **基本语法**:Java的基础语法是所有编程的起点,包括数据类型(如整型、浮点型、字符型、布尔型等)、变量声明、运算符、流程控制语句(如if-else、switch、for...
这通常包括以下几个方面: 1. **环境搭建**:学习如何安装Java Development Kit (JDK) 和设置环境变量,确保能够编译和运行Java程序。 2. ** HelloWorld 示例**:这是所有编程语言初学者都会接触到的第一个程序,...
"黑马程序员java基础试题、笔记"这个压缩包资源为Java初学者和希望加入"黑马程序员"培训课程的学员提供了丰富的学习材料。这些资源包括面试问题合集、整理的资料、Android面试题、学员入学面试总结、面试技巧、必须...
在Java的学习过程中,你会遇到以下几个核心概念: 1. **环境搭建**:安装Java Development Kit (JDK),设置环境变量,包括JAVA_HOME、PATH和CLASSPATH,这是运行和编译Java程序的前提。 2. ** HelloWorld 程序**:...
Java基础入门学习资料通常涵盖以下几个关键知识点: 1. **Java环境搭建**:首先,你需要安装Java Development Kit(JDK),这是编写、编译和运行Java程序所需的基础工具。在Windows、Mac或Linux系统上,都可以找到...
从给定的文件信息中,我们可以提炼出与Java编程相关的几个关键知识点,这些知识点对于初学者来说至关重要,有助于他们理解并掌握Java的基础编程技巧。以下是对这些知识点的详细阐述: ### 1. Java基本语法与控制...
Java学习通常分为几个阶段,从基础到高级,逐步深化。以下是对给定文件中提到的学习路线的详细解析: ##### 第一阶段:Java基础 - **JAVASE**:Java标准版,包含了Java的核心API,如集合框架、I/O流、线程处理等。 ...