8.1 类的定义
包括普通类和枚举类,枚举(略)
下面都是指普通类:
public只能用于外部类,成员类,不能用于局部类,匿名类
protected和private用于成员类时(待解)
static只能用于成员类,不能用于外部类,局部类,匿名类
abstract类可以有abstract方法
abstract类不能实例化
abstract类一定要保证子类能够实现其中的abstract方法
如果是为了不想被实例化,应该让构造成为private,通常含有static字段或方法
final类不能被继承,其中的方法无法被覆盖
final和abstract显然不能共存
strictfp类,表示其中的所有实型变量和表达式都是FP-strict
泛型类(略)
除了外部类和静态成员类,其他都叫内部类,包括成员内部类,局部内部类,匿名内部类
不能有static初始块,不能有成员接口
不能定义static成员,除非是final字段
但可以继承static成员
一个内部类的实例总是依赖于一个外部类实例
内部类外面定义的局部变量,形参,异常变量,必须定义为final
内部类外面定义的局部变量在内部类里面使用前必须初始化
静态成员类和静态局部类
可以有static初始块,可以定义static成员,可以有成员接口
成员接口总是static的 (内部接口的一种)
8.2 类的成员
构造方法,静态或非静态的初始化块,并非类的成员,所以不会被继承
8.3 类的字段
父类的private字段有可能被子类访问到,比如他们都在一个外部类里
但肯定不会继承给子类的
有可能从多个途径多次继承了同一个接口里定义的字段,没有关系,那只是常量,而且可以直接访问,或者用接口名访问
但两个父接口里的同名字段是不能被子类访问的,即使类型和值都相同也会编译报错
static字段就是类变量,非static就是实例变量
类变量初始化不能调用this和super,因为没有实例对象
未赋值的final static字段必须在static初始化块里初始化
未赋值的final 非static字段必须在构造方法结束前初始化
transient字段在持久化存储时不会被存储,比如序列化时
volatile字段在多线程中共享访问时总是读取最新值
volatile不能跟final共存
8.4 类的方法
abstract方法不能再声明为 private, static, final, native,strictfp, synchronized
native跟strictfp不能共存
abstract方法可以覆盖非abstract方法
无法用super调用abstract父类,因为父类无法实例化,但可以调用继承来的方法
final类的方法和声明为private的方法默认为final
native方法是说本方法不是平台无关的,里面有本地代码,直接加分号,没有方法体
除了abstract和native,方法必须有方法体{....}
声明了返回类型,不一定必须有return,可能通过异常等方式跳出方法
在覆盖或者实现方法的过程中无需考虑strictfp修饰符
8.8构造方法
构造不能是abstract, static, final, native, strictfp,synchronized
class Outer { class Inner {} } class ChildOfInner extends Outer.Inner { ChildOfInner() { (new Outer()).super(); } }
相关推荐
[Java参考文档].J2SE6.0_CN.CHM,由于文件过大,所以划分了两个rar文件
J2SE5.0_CN.chm API中文手册
J2SE,即Java 2 Platform, Standard Edition,是Java平台的核心部分,主要针对桌面应用和服务器端应用程序的开发。 J2SE Java Api包含了Java语言的基础库,这些库覆盖了从基本数据类型操作、内存管理(垃圾回收)到...
3. **NIO.2(New I/O API)**:引入了新的 NIO 模块,提供了异步文件操作和文件系统事件通知,使得处理大量I/O操作更为高效。 4. **改进的 JDBC 4.0**:JDBC 4.0 提供了自动连接管理、统一的异常处理以及对 Java ...
3. **NIO.2(New I/O 2)**:引入了`java.nio.file`包,提供了文件系统操作的新API,支持文件路径、文件属性、文件观察者等特性,增强了非阻塞I/O的能力。 4. **动态语言支持**:通过`javax.script`包,Java 6支持...
7. **JPA(Java Persistence API)**:是Java平台上的ORM(对象关系映射)规范,用于管理和持久化Java对象到数据库中。 8. **JAF(JavaBeans Activation Framework)**:支持Java对象的激活和序列化,常用于电子邮件...
2. **J2SE (Java Standard Edition)**:这是Java平台的核心,包含了Java运行环境和一些基础的API,用于开发桌面应用和服务器端应用。J2SE提供了诸如集合、多线程、网络编程等核心功能。 3. **Servlet**:Servlet是...
zxing/zxing-j2se-1.7.jar包...包含类 com.google.zxing.StringsResourceTranslator.class com.google.zxing.client.j2se.BufferedImageLuminanceSource.class com.google.zxing.client.j2se.CommandLineRunner.class ...
这个压缩包文件"J2SE.JDBC_ODBC_Bridge.code.rar"显然包含了关于如何使用JDBC-ODBC Bridge进行编程的实例代码。 JDBC-ODBC Bridge是Java早期版本中用来连接ODBC(Open Database Connectivity)兼容数据库的一种方式...
j2se6中文API文档,相当全,有框架,功能强大,编程好助手。
这个"JAVA_API.rar"压缩包包含的是JAVA_API的中文帮助文档,特别是针对j2se(Java 2 Standard Edition)、j2ee(Java 2 Enterprise Edition)以及j2me(Java 2 Micro Edition)的API。 1. **j2se API**:这是Java的...
SE(J2SE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。 EE(J2EE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。
J2SE_5.0_第06章_常用类2.rar
《J2SE 5.0 第06章:常用类1》主要涵盖了Java标准版5.0中的核心类库,特别是对字符串(String)类的深入探讨。这一章的学习旨在帮助开发者掌握Java中字符串处理的基本技巧和高级特性,提高代码效率和可读性。 在Java...
java6文档,chm格式,支持目录、索引、搜索
- 一旦选择了文件,我们可以通过`BufferedImage`类来读取图像文件。 ```java BufferedImage image = ImageIO.read(selectedFile); // 可以对图像进行进一步的操作,如显示、编辑或保存 ``` 5. **文件上传到...
- **NIO.2**:引入了新的文件系统API,提供异步I/O操作和文件路径操作等增强功能。 - **多catch块**:可以在一个catch子句中捕获多种类型的异常,提高了代码的可读性。 - **改进的枚举类型**:增加了`EnumSet`和`...
jar包,官方版本,自测可用
在J2SE.CHM文件中,你可以找到以下几个主要的知识点: 1. **类和接口**:包括了如`String`、`ArrayList`、`HashMap`、`Thread`等核心类,以及`Runnable`、`Comparator`等常用接口。每个类或接口下详细列出了其构造...