简要介绍下类、对象、方法和实例变量的概念。
对象:对象是类的一个实例,有状态和行为。
类:类是一个模板,它描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
java有哪些关键字
保留字与关键字都不能用于常量、变量、和任何标识符的名称
关键字 描述
abstract 抽象方法,抽象类的修饰符
assert 断言条件是否满足
boolean 布尔数据类型
break 跳出循环或者label代码段
byte 8-bit 有符号数据类型
case switch语句的一个条件
catch 和try搭配扑捉异常信息
char 16-bit Unicode字符数据类型
class 定义类
const 未使用
continue 不执行循环体剩余部分
default switch语句中的默认分支
do 循环语句,循环体至少会执行一次
double 64-bit双精度浮点数
else if条件不成立时执行的分支
enum 枚举类型
extends 表示一个类是另一个类的子类
final 表示一个值在初始化之后就不能再改变了,表示方法不能被重写,或者一个类不能有子类
finally 为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。
float 32-bit单精度浮点数
for for循环语句
goto 未使用
if 条件语句
implements 表示一个类实现了接口
import 导入类
instanceof 测试一个对象是否是某个类的实例
int 32位整型数
interface 接口,一种抽象的类型,仅有方法和常量的定义
long 64位整型数
native 表示方法用非java代码实现
new 分配新的类实例
package 一系列相关类组成一个包
private 表示私有字段,或者方法等,只能从类内部访问
protected 表示字段只能通过类或者其子类访问,子类或者在同一个包内的其他类
public 表示共有属性或者方法
return 方法返回值
short 16位数字
static 表示在类级别定义,所有实例共享的
strictfp 浮点数比较使用严格的规则
super 表示基类
switch 选择语句
synchronized 表示同一时间只能由一个线程访问的代码块
this 表示调用当前实例,或者调用另一个构造函数
throw 抛出异常
throws 定义方法可能抛出的异常
transient 修饰不要序列化的字段
try 表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码
void 标记方法不返回任何值
volatile 标记字段可能会被多个线程同时访问,而不做同步
while while循环
什么是继承
一个类可以由其它类派生,如果创建了一个类,这个类具有你需要的属性和方法,那么你就可以创建新的类来继承该类
继承可以重用已经存在类的方法和属性,被继承的类称为超类(super class),派生类称为子类(subclass)。
继承是 is-a 关系,子类(subclass)只能有一个父类(super class),但父类可以有多个子类。
举例,将 **动物(Animal)**作为父类,小猫(cat)或者小狗(dog)与动物是存在包含关系。用代码表示如下:
/* 创建动物类作为cat and dog 的 父类 */
public class Animal {
public String name;
public int age;
void eat() {
System.out.println(name+"吃东西...");
}
void run() {
System.out.println(name+"run...");
}
}
public class Dog extends Animal{
public String color;
void info() {
System.out.println("Animal:"+name);
System.out.println("age:"+"今年"+age+"岁.");
System.out.println("color:"+color);
}
注:cat类可参考dog类
java空行
空白行或者有注释的行,Java编辑器会忽略
什么时接口
在java中接口可以理解为 对象之间相互通信的协议
接口只定义 派生要用到的方法,方法的具体实现完全取决于派生类.