1).访问修饰符的关键字(共3个)
关键字 | 意思 | 备注,常用 |
public | 公有的 | 可跨包,(默认选择) |
protected | 受保护的 | 当前包内可用 |
private | 私有的 | 当前类可用 |
作用域 | 当前类 | 同一package | 子孙类 | 其他package |
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
protected | √ | √ | × | × |
friendly | √ | × | × | × |
2).定义类、接口、抽象类和实现接口、继承类的关键字、实例化对象(共6个)
关键字 | 意思 | 备注,常用 |
class | 类 | public class A(){} 花括号里有已实现方法体,类名需要与文件名相同 |
interface
| 接口 | public interface B(){} 花括号里有方法体,但没有实现,方法体句子后面是英文分号“:”结尾 |
abstract
| 声明抽象 | public abstract class C(){} 介于类与接口中间,可以有也可以没有已经实现的方法体 |
implements
| 实现 | 用于类或接口实现接口public class A interface B(){} |
extends
| 继承 | 用于类继承类 public class A extends D(){} |
new | 创建新对象 | A a=new A(); A表示一个类 |
问:interface和abstract的异同点
| Abstract class | Interface |
实例化 | 不能 | 不能 |
类 | 一种继承关系,一个类只能使用一次继承关系。 可以通过继承多个接口实现多重继承 | 一个类可以实现多个interface |
数据成员 | 可有自己的 | 静态的不能被修改即必须是static final,一般不在此定义 |
方法 | 可以私有的,非abstract方法,必须实现 | 不可有私有的,默认是public,abstract 类型 |
变量 | 可有私有的,默认是friendly 型, 其值可以在子类中重新定义,也可以重新赋值 | 不可有私有的,默认是public static final 型,且必须给其初值, 实现类中不能重新定义,不能改变其值。 |
设计理念 | 表示的是“is-a”关系 | 表示的是“like-a”关系 |
实现 | 需要继承,要用extends | 要用implements |
1.相同点
A. 两者都是抽象类,都不能实例化。
B. interface实现类及abstrct class的子类都必须要实现已经声明的抽象方法。
2. 不同点
A. interface需要实现,要用implements,而abstract class需要继承,要用extends。
B. 一个类可以实现多个interface,但一个类只能继承一个abstract class。
C. interface强调特定功能的实现,而abstract class强调所属关系。
D. 尽管interface实现类及abstrct class的子类都必须要实现相应的抽象方法,但实现的形式不同。interface中的每一个方法都是抽象方法,都只是声明的 (declaration, 没有方法体),实现类必须要实现。而abstract class的子类可以有选择地实现
3).包的关键字(共2个)
关键字 | 意思 | 备注,常用 |
import | 引入包的关键字 | 当使用某个包的一些类时,仅需类名 然后使用ctrl+shift+o或者选定类名(类或属性或方法)按住ctrl+单击 即可自动插入类所在的包。如:JFrame 快捷键之后自动加入 import javax.swing.JFrame; |
package | 定义包的关键字 | 将所有有关的类放在一个包类以便查找修改等。如:package javake.flycat.draw002; |
4).数据类型的关键字(共12个)
关键字 | 意思 | 备注,常用 |
byte | 字节型 | 8bit |
char | 字符型 | 16bit |
boolean | 布尔型 | -- |
short | 短整型 | 16bit |
int | 整型 | 32bit |
float | 浮点型 | 32bit |
long | 长整型 | 64bit |
double | 双精度 | 64bit |
void | 无返回 | public void A(){} 其他需要返回的经常与return连用 |
null | 空值 |
|
true | 真 |
|
false | 假 |
|
5).条件循环(流程控制)(共12个)
关键字 | 意思 | 备注,常用 |
if | 如果 | if(){} 如果小括号里面怎么怎么样 花括号就怎么怎么样 |
else | 否则,或者 | 常与if连用,用法相同 |
while | 当什么的时候 | while 怎么样就do什么 while(){} |
for | 满足三个条件时 | for ( ; ; ){} |
switch | 开关 | switch(表达式) |
case | 返回开关里的结果 | |
default | 默认 | |
do | 运行 | 常与while连用 |
break | 跳出循环 |
|
continue | 继续 | 中断本次循环,并并开始下一次 |
return | 返回 | return 一个返回值类型 |
instanceof | 实例 | 一个二元操作符,和==,>,<是同一类的。测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据 |
6).修饰方法、类、属性和变量(共9个)
关键字 | 意思 | 备注,常用 |
static | 静态的 | 属性和方法都可以用static修饰,直接使用类名.属性和方法名。 只有内部类可以使用static关键字修饰,调用直接使用类名.内部类类名进行调用。 static可以独立存在。静态块 |
final | 最终的不可被改变的 | 方法和类都可以用final来修饰 final修饰的类是不能被继承的 final修饰的方法是不能被子类重写。 常量的定义: final修饰的属性就是常量。 |
super | 调用父类的方法 | 常见public void paint(Graphics g){ super.paint(g); ··· } |
this | 当前类的父类的对象 | 调用当前类中的方法(表示调用这个方法的对象) this.addActionListener(al):等等 |
native | 本地 |
|
strictfp | 严格,精准 |
|
synchronized | 线程,同步 |
|
transient | 短暂 |
|
volatile | 易失 |
|
7).错误处理(共5个)
关键字 | 意思 | 备注,常用 |
catch | 处理异常 | 1.try+catch (来自网上的资料) |
try | 捕获异常 | |
finally | 有没有异常都执行 | |
throw | 抛出一个异常对象 | 一些可以导致程序出问题的因素,比如书写错误,逻辑错误或者是api的应用错误等等. 为了防止程序的崩溃就要预先检测这些因素,所以java 使用了异常这个机制. 在java中异常是靠 "抛出" 也就是英语的"throw" 来使用的,意思是如果发现到什么异常的时候就把错误信息 "抛出"
|
throws | 声明一个异常可能被抛出 | 把异常交给他的上级管理,自己不进行异常处理 |
8).其他(共2个)
| ||
关键字 | 意思 | 备注,常用 |
enum | 枚举,列举型别 |
|
assert | 断言 |
|