- 浏览: 510506 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
devon.k:
推荐的一种解决方案:https://developer.jbo ...
JBoss应用遇到问题记录 -
liuzl121:
楼主你好,我遇到了你说的第一个问题,能不能详细一些?
JBoss应用遇到问题记录 -
showzh:
...
MySQL5.1列类型 -
zijie110:
...
使用SpringSide的PropertyFilter无法实现 where 属性名1 like '%值1%' or 属性名1 like '%值2%' 的效果 -
JAVA-JVM:
您好,我看了您的一篇文章“用Maven构建Flex4项目实践记 ...
用Maven构建Flex4项目实践记录
[SCJP Sun Certified Programmer for Java 6 Study Guide (Exam 310-065)] chapter 1
一. 标识符
1. 标识符只能由字母、下划线、货币符号、数字 组成,除数字 外其余均可作为标识符的开头符号。(PS:汉字作为标识符也是合法的,虽然通常不会使用。)
2. 标识符的长度不限。
3. JavaBeans方法必须以驼峰式命名,同时根据其用途,必须以set, get, is, add, remove其一作为开头。
二. 声明规则
1. 1个源代码文件只能包含1个public类,且文件名必须和该public类的名称一致。
2. 1个源代码文件只能有1个package声明,可以有多个import声明。
3. package声明必须位于源代码文件的第1行(注释不算),import声明必须位于package和类声明之间,如果没有package声明,则import必须位于第1行(注释不算)。
4. package和import声明作用于1个源代码文件中的所有类。
5. 1个源代码文件可以包含多个非public类。
6. 不含public类的文件无命名限制。
三. 类的声明
1. 访问控制符
1) 共有3个访问控制修饰符:public, protected, private;共有4个访问级别:public, protected, default, private。
2) 类只有 public 或 default 这2个访问级别。
3) 标识为 default 的类只对同包下的其他类可见;标识为 public 的类对所有其他类可见。
4) 类的可见性决定着:
a) 是否能创建该类的实例;
b) 是否能继承该类;
c) 是否能访问该类的方法和属性。
2. 非访问控制符
1) 可修饰类的非访问控制修饰符共有3个:final, abstract, strictfp。
2) 1个类不能同时用 final 和 abstract 进行修饰。
3) 1个标识为 final 的类不能被继承;1个标识为 abstract 的类不能被实例化。
4) 1个只有1个abstract 方法的类必须是 abstract 的;1个标识为 abstract 的类可以有 abstract 方法和非 abstract 方法。
5) 1个abstract 类的首个非 abstract 子类必须实现所有 abstract 方法。
四. 接口及其实现
1. 接口用于约束1个类能做什么而不是怎么做。
2. 接口可以被任何类实现,不受类的继承树限制。
3. 无论是否用abstract 修饰,接口实际上就是个100%的 abstract 类。
4. 接口只能有abstract 方法。
5. 接口方法默认是 public 和 abstract 的,可以不显式的使用这2个修饰符。
6. 接口可以有常量,这些常量默认是 public, static, final 的,可以不显式的使用这3个修饰符,或用这3个修饰符的任意组合进行修饰。
7. 1个合法的非abstract实现类有以下属性:
1) 它提供接口方法的具体实现;
2) 它实现的方法必须遵守所有合法的override规则;
3) 实现方法不能声明任何新的checked exceptions,也不能声明任何比接口方法所声明的exceptions低级的checked exceptions;
4) 实现方法可以声明任何runtime exceptions而不用管接口声明;
5) It must maintain the exact signature (allowing for covariant returns)
and return type of the methods it implements (but does not have to
declare the exceptions of the interface).
8. 1个接口的实现类可以是 abstract 的;1个abstract 类不必实现接口方法。
9. 1个类只能继承1个类,但可以实现多个接口。
10. 接口可以继承1个或多个接口。
11. 接口不能继承类,也不能实现类或接口。
五. 类成员的声明
1. 访问控制修饰符
Visibility | Public | Protected | Default | Private |
本类 | Y | Y | Y | Y |
同包其他类 | Y | Y | Y | N |
同包子类 | Y | Y | Y | N |
非同包子类 | Y | Y (通过继承) |
N | N |
非同包非子类 | Y | N | N | N |
1) 类成员变量的访问有2个途径:1个类访问其他类的成员;子类访问父类的成员。
2) 如果1个类是不可被访问的,则这个类的所有成员也是不可被访问的;类的可见性先于其成员的可见性。
2. 非访问控制修饰符
1) abstract:
a) abstract不能和final、private、static同时使用。
b) abstract方法的声明语法为:1个签名、1个返回类型、1个可选的throws、无实现。
c) 辨别1个非abstract方法的3个要素:没有用abstract修饰、有大括号、大括号里有代码。
2) synchronized只能用于修饰方法或代码块,synchronized方法可以用任何访问控制修饰符进行修饰。
3) native只能用于修饰方法;native方法的声明类似abstract方法声明,无方法体。
4) strictfp只能用于修饰类或方法;strictfp表示浮点使用IEEE 754标准。
3. 本地变量
1) 不能用访问控制符修饰本地(method, automatic, or stack)变量;
2) 本地变量能用的修饰符只有 final;
3) 本地变量无默认值,所以必须在使用前进行初始化;
4) 和实例变量同名的本地变量是合法的。
4. 可变参数:
1) 从Java5开始,方法的声明可以接受0到多个参数,这种方式叫做可变参数;
2) 可变参数以...表示,...必须紧跟类型;
3) 1个方法只能有1个可变参数;
4) 可变参数必须只能处于最后1个参数的位置。
5. 实例变量声明
1) 实例变量可以用任何访问控制修饰符进行修饰;也可以用final、transient修饰;
2) 实例变量不能用abstract, synchronized, native, or strictfp修饰;
3) final变量有以下属性:
a) final变量的值在初始化后不可修改;
b) final引用不可修改(不能再指向另一个对象);
c) final引用必须在构造函数完成前初始化。
d) 不存在final对象,final引用并不表示该对象是不变的(immutable)。
4) transient, volatile 只能修饰实例变量。
6. 数组声明
1) 数组可以容纳原子类型或对象类型的元素,数组本身是个对象;
2) 声明数组时,方括号可以位于变量名左侧或右侧;
3) 声明数组时,包含size总是不合法的;
4) 数组元素必须是同个类型或存在IS-A关系的。
7. 静态变量和方法
1) 与类的实例无关,使用时不需要类的实例。
2) 只有1份copy,所有类的实例共享它们。
3) 静态方法不能直接访问非静态成员。
8. 枚举类
1) 1个枚举类列举了1个类型的一组值。
2) 1个枚举类既不是String、也不是int,而是枚举类型。
3) 枚举类可以声明在类的内部或外部,但不能在方法内声明。
4) 声明在类的外部的枚举类不能用static, final, abstract, protected, private 进行修饰。
5) 枚举类可以包含构造函数、方法、变量、constant class bodies。
6) 枚举类常量可以是带有参数的构造函数形式。
7) 枚举类构造函数可以有参数,可以被重载。
8) 枚举类构造函数不能直接通过代码调用,它在1个枚举类型初始化时被自动调用。
9) 枚举类声明最后有没有;符号都是合法的。
10) 枚举类的静态values()方法返回这个包含这个枚举类所有类型的数组。
9. 构造函数声明
1) 构造函数的名称必须和类名相同;
2) 构造函数无返回类型(void可以用,but badly);
3) 构造函数可以用任何访问控制修饰符来进行修饰;
4) 构造函数不能用static、final、abstract修饰;
5) 构造函数允许可变参数。
发表评论
-
JVM记要
2020-03-13 22:06 4JVM架构 图略(iteye已废) ... -
JUC(java.util.concurrent)要点笔记
2020-03-02 11:40 1073iteye没落了,编辑格式太难整,表格位置有问题,图片 ... -
JMH记要
2020-01-16 11:46 6111.What's JMH?——OpenJDK提供的微基准测 ... -
Windows下多个jdk共存问题
2016-08-26 13:52 1153现象: 共安装有jdk1.6、1.7、1.8这3个版本, ... -
国际化
2015-01-06 16:50 922语言代码标准 国家代码标准 Java: pu ... -
LTW(Loading-Time Weaving)应用实践要点记录
2013-05-09 17:50 0http://static.springsource.org ... -
Java常用命令(工具)
2013-03-21 16:04 2095启动参数加上-XX:+HeapDumpOnOutOfMemor ... -
Java基础修炼
2012-12-13 19:00 1083Java标准与规范 Java ... -
Java并发编程持续学习
2012-07-04 17:31 1380一. 概念与基础 book: 《Java并发编程实践》 ... -
Openfire和Spark本地开发环境搭建记要
2012-05-16 22:41 111471. Openfire 参考:openfire搭建 ... -
Java基础恶补——Development
2012-02-18 19:26 1055[SCJP Sun Certified Programmer ... -
Java基础恶补——线程
2012-02-11 23:19 910[SCJP Sun Certified Programmer ... -
Java基础恶补——内部类
2012-02-04 19:35 1175[SCJP Sun Certified Programmer ... -
Java基础恶补——泛型和集合
2012-02-01 18:17 3159[SCJP Sun Certified Programmer ... -
Java基础恶补——Strings, I/O, Formatting, and Parsing
2012-01-29 15:51 1225[SCJP Sun Certified Programmer ... -
Java基础恶补——控制流、异常、断言
2011-11-30 19:02 2067[SCJP Sun Certified Programmer ... -
Java基础恶补——Operators
2011-11-24 16:00 1187[SCJP Sun Certified Programmer ... -
Java基础恶补——Assignments
2011-11-23 14:42 1148[SCJP Sun Certified Programmer ... -
Java基础恶补——OO
2011-11-17 13:30 1174[SCJP Sun Certified Programmer ... -
Java基础恶补——关键字
2011-10-19 16:01 0Java关键字表(assert added in 1.4, e ...
相关推荐
java毕业设计——题库及试卷管理模块的设计与开发(源代码+论文).zip java毕业设计——题库及试卷管理模块的设计与开发(源代码+论文).zip java毕业设计——题库及试卷管理模块的设计与开发(源代码+论文).zip java毕业...
java毕业设计——文本编辑器.zip java毕业设计——文本编辑器.zip java毕业设计——文本编辑器.zip java毕业设计——文本编辑器.zip java毕业设计——文本编辑器.zip java毕业设计——文本编辑器.zip java毕业设计...
【Java基础实战——Bank项目详解】 Java作为一款广泛使用的编程语言,其强大的功能和灵活性使其在软件开发领域占据着重要地位。"尚硅谷Java基础实战——Bank项目"是一个旨在帮助初学者深入理解Java编程概念并实践...
根据提供的信息,“Java语言程序设计——基础篇”这本书主要针对初学者介绍了Java编程的基础知识。虽然部分内容并未给出具体章节或细节信息,但基于书名、描述及常见的Java基础教程内容,我们可以推测书中涵盖的主要...
JAVA技术应用基础——对象 模式 虚拟机
JAVA基础上机题,按照类别整理,比较适合入门学习,内容包括上机题以及源代码答案,题量适中。
java毕业设计——java+毕业设计+扫雷(程序).zip java毕业设计——java+毕业设计+扫雷(程序).zip java毕业设计——java+毕业设计+扫雷(程序).zip java毕业设计——java+毕业设计+扫雷(程序).zip java毕业设计——java...
java毕业设计——基于java的五子棋游戏的设计与开发(源代码+论文).zip java毕业设计——基于java的五子棋游戏的设计与开发(源代码+论文).zip java毕业设计——基于java的五子棋游戏的设计与开发(源代码+论文).zip ...
《Java语言程序设计——基础篇》是Java语言的经典教材,中文版分为《Java语言程序设计基础篇》和《Java语言程序设计进阶篇》主要介绍语法结构、面向对象程序设计基础知识到面向对象程序设计、图形用户界面设计、异常...
java毕业设计——基于java的动力节点系统的设计与实现(源码+数据库).zip java毕业设计——基于java的动力节点系统的设计与实现(源码+数据库).zip java毕业设计——基于java的动力节点系统的设计与实现(源码+数据库)....
java毕业设计——java文件传输系统的设计与实现(论文+源代码).zip java毕业设计——java文件传输系统的设计与实现(论文+源代码).zip java毕业设计——java文件传输系统的设计与实现(论文+源代码).zip java毕业设计...
java毕业设计——基于java的安全电子商务系统的的设计与实现.zip java毕业设计——基于java的安全电子商务系统的的设计与实现.zip java毕业设计——基于java的安全电子商务系统的的设计与实现.zip java毕业设计——...
java毕业设计——java泡泡堂网络游戏的设计与实现(源代码+论文).zip java毕业设计——java泡泡堂网络游戏的设计与实现(源代码+论文).zip java毕业设计——java泡泡堂网络游戏的设计与实现(源代码+论文).zip java毕业...
java毕业设计——基于java的远程视频会议系统的设计与实现(系统+论文).zip java毕业设计——基于java的远程视频会议系统的设计与实现(系统+论文).zip java毕业设计——基于java的远程视频会议系统的设计与实现(系统+...
java毕业设计——java银行帐目管理系统的设计与实现(源代码+论文).zip java毕业设计——java银行帐目管理系统的设计与实现(源代码+论文).zip java毕业设计——java银行帐目管理系统的设计与实现(源代码+论文).zip ...
面试题汇集,JAVA开发找工作时,尤其是实干派,明明都会做,但是面试总是不过,看java面试宝典,汇集现在java基础部分的面试题,可以高效的回顾
Java毕业设计——基于Java的飞机大战游戏的设计与实现(论文+源代码+讲解视频).zip Java毕业设计——基于Java的飞机大战游戏的设计与实现(论文+源代码+讲解视频).zip Java毕业设计——基于Java的飞机大战游戏的...
java毕业设计——商品供应管理系统的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——商品供应管理系统的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——商品供应管理系统的设计与实现...
Java全能学习面试手册——互联网企业面试真题.zip 01 java面试——北京-百度-Java中级.pdf 02 java面试——北京-京东-Java中级.pdf 03 java面试——广州-唯品会-Java大数据开发工程师.pdf 04 java面试——杭州-阿里...
java毕业设计——java公共资源模块的设计与开发(源代码+论文).zip java毕业设计——java公共资源模块的设计与开发(源代码+论文).zip java毕业设计——java公共资源模块的设计与开发(源代码+论文).zip java毕业设计...