java里的关键字

6.5 关键字


6.5.1 native

native修饰的方法是一个本地方法,底层用C/C++语言编写的方法。该方法在Java层面没有方法体,因为它的方法体在C/C++程序中。

【修饰符】native返回值类型 方法名(【形参列表】);

如果Java程序中要调用或重写native方法,正常使用即可。

6.5.2 final

final:最终的

final可以修饰变量:它们的值都不能被修改

(1)局部变量:必须手动初始化,不能修改值

(2)成员变量:必须初始化(初始化方式有2种,一种是直接初始化,一种是通过构造器),没有set方法

publicclassMath{

publicstaticfinaldoublePI=3.14;

}

publicclassTriangle{

privatefinaldoublea;

privatefinaldoubleb;

privatefinaldoublec;

publicTriangle(doublea, doubleb, doublec){

this.a=a;

this.b=b;

this.c=c;

}

}

final可以修饰类:该类不能被继承,例如:String类、Math类等。

final可以修饰方法:该方法可以被子类继承,但不能被子类重写。

6.5.3 static

static:静态的

(1)修饰成员变量:称为静态变量

(2)修饰成员方法:称为静态方法

(3)加在import语句中:称为静态导入

(4)修改代码块:静态代码块(后面再讲)

(5)修饰成员内部类:静态内部类(后面再讲)

1、静态变量:

【修饰符】class类名{

【其他修饰符】static数据类型静态变量名;

【其他修饰符】数据类型实例变量名;

【修饰符】返回值类型方法名(【形参列表】){//形参也是方法的局部变量

数据类型局部变量名;

}

}

静态变量的值是该类所有对象共享的,因为它属于类,不属于某个具体的对象。

变量的分类:

(1)声明的位置和方式不同

局部变量:方法中,包括方法的()或{}

静态变量:方法外,有static修饰

实例变量:方法外,没有static修饰

(2)在内存中存储值的位置不同

局部变量:栈

静态变量:元空间/方法区

实例变量:堆

(3)默认值

局部变量:没有

静态变量:有

实例变量:有

(4)生命周期

静态变量 > 实例变量 > 局部变量

(5)作用域

静态变量 > 实例变量 > 局部变量

静态变量在当前类中任意位置都可以使用。

实例变量仅限于在当前类的非静态成员中使用。

局部变量仅限于声明它的{}中使用。

2、静态方法

当某个方法的调用,或方法的功能实现不依赖于当前类的对象,这样的方法就可以声明为静态方法。

在本类中:直接调用,并且在本类中任意位置都可以使用。

在其他类中:类名.静态方法

3、静态导入

importstatic包.类名.静态成员名;

importstatic包.类名.*;

4、静态与非静态的互访原则

静态 访问 非静态 (不允许)

静态 访问 静态

非静态 访问 非静态

非静态 访问 静态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值