Java类和对象

对象:对象是类的一个实例

类:类是一个模板,它描述一类对象的行为和状态

创建类

class 类名{
//属性
//方法
}

创建对象

声明:声明一个对象,包括对象名称和对象类型

实例化:使用关键字new来创建一个对象

初始化:使用new创建对象时,会调用构造方法初始化对象

类名 对象名=new 类名(参数值);

访问属性和方法

对于非静态变量和方法,可以通过对象和.运算符来调用

对象名.属性名
对象名.方法名

对于静态变量和方法,可以通过类he.运算符来调用

类名.属性名
类名.方法名

变量类型

局部变量:在方法中定义的变量。变量声明和初始化都是在方法中,方法结束后,变量自动销毁。

成员变量:定义在类中,方法体之外的变量。在创建对象的时候实例化。

类变量:定义在类中,方法体之外,声明为static类型。

构造方法

构造方法与类名同名,没有返回值也不使用void声明,通过定义不同形参列表可以定义多个构造方法。

每个类都有构造方法,如果没有显示声明,则Java编译器会默认提供。

在创建对象的时候,至少要调用一个构造方法。

源文件声明规则

1、一个源文件只能有一个public类,但可以有多个非public类,源文件名称与public类的类名应保持一致。

2、包主要用来对类和接口进行分类,包对应嵌套的文件夹。

3、包的声明:package 包名。应放在源文件的首行,其对文件内定义的所有类都有效。

4、包的导入:import 包名.类名。应放在包的声明和类的声明之间,对文件内定义的所有类都有效。

访问修饰符

public

使用对象:类、接口、变量和方法。对所有类可见。

private

适用对象:变量和方法,不能修饰类。在同一类中可见。

default

使用对象:类、接口、变量和方法。对同一包内可见。

protected

使用对象:变量和方法,不能修饰类。对同一包内的类和所有子类可见。

非访问修饰符

static

静态变量:用来声明独立于对象的静态变量,无论一个类实例化多少对象,它的静态变量只有一份拷贝。静态变量也被称为类变量。

静态方法:用来声明独立于对象的静态方法。静态方法只能使用静态变量。

final

final变量:变量一旦赋值后,不能被重新赋值,被final修饰的实例变量必须显式指定初始值。

final方法:可以被子类继承,但是不能被重写

final类:不能被继承

abstract

抽象类:不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。

抽象方法:一种没有任何实现的方法,该方法的具体实现由子类提供。

synchronized

声明的方法同一时间只能被一个线程访问。

transient

该修饰符包含在定义变量的语句中,用来预处理类和变量的数据类型。序列化的对象包含被transient修饰的实例变量时,Java虚拟机跳过该特定的变量。

volatile

volatile 修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。而且,当成员变量发生变化时,会强制线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。

一个 volatile 对象引用可能是 null。

posted @ 2019-10-13 14:15  蓝色风扇  阅读(185)  评论(0编辑  收藏  举报