java 类修饰符_跟我学java编程—认识Java类的修饰符

1、访问修饰符

在定义类、及类的属性和方法时,都需要指定访问修饰符,以此来限定类、属性、方法的可访问范围。Java种访问修饰符有以下几个关键字。

(1)privte:私有。只有在类的主体中才可访问。该关键字只能修饰属性和方法,不能修饰类。

(2)protected:受保护。该类及其子类的成员均可以访问,同一个包中的类也可以访问。该关键字只能修饰修饰属性和方法,不能修饰类。

(3)public:公共。该类或非该类均可访问。

(4)默认:不使用修饰符。只有相同包中的类可以访问。

例如,下面代码定义了两个类,一个类是Book类,一个类是Manager类。用Manager类访问Book类的私有变量是不能访问的。

b247584d4820ce39e78df144ba0fe2db.png

2、static修饰符

前面说到访问类成员和方法时,需要先把类实例化为对象才能访问类的成员和方法。然而在实际编程时,有时候需要类在没有实例化的前提下访问类的成员和方法。

例如,下面的代码给出了一个加法类,该类包含了三个重载方法,用于计算不同数据类型的求和。代码如下:

6dcb037876ed9d1803f8f1c3c89f8c0d.png

代码中的Addition类属于工具类,该类可以被其它类调用计算两数和。在Management类的main方法里,声明了Addition类变量,并实例化Addition,然后再调用Addition对象的add方法。Addition类既然是工具类,必然经常被其它类调用,如果每次调用前都需要实例化对象,那就有点麻烦了。通过static修饰符就可以避免出现这样的问题。

static修饰符可以修饰类、类属性和方法。使用该关键字修饰的内容属于静态内容,可以直接使用而不必实例化后再使用。用static修饰符修饰的类方法称为静态方法,用static修饰符修饰的类属性称为静态属性。

被static修饰符修饰的类方法或类属性访问语法为:

类名.方法名

类名.属性名

修改上面的Addition类,其方法均用static修饰符修饰。代码如下:

57341d75466ee8e5a2c1a7c59248fdf8.png

Addition类的方法被修饰为静态方法后,就可以在Management类中直接用Addition类调用add方法,而无需实例化对象了。

3、final修饰符

final修饰符的作用类似于前面讲的常量,常量是指程序运行过程中,有些值需要保持不变。例如:在基于数学运算的程序中,圆周率是固定不变的值。类似圆周率等在程序运行过程中固定不变的值可以定义为常量,便于使用。

final修饰符可以修饰类,被修饰的类不能派生子类。

final修饰符可以修饰类方法,被修饰的类方法不能被子类重写。

final修饰符可以修饰类属性和变量,被修饰的类属性和变量不能被修改且必须被初始化。

例如,下面的代码定义了Constant类,该类的属性pi被修饰为final,不能在程序中被修改。

83f40ec830dce03a8d711d5c3cdf54b4.png

■ 知识点拨

访问修饰符限定了类、属性、方法的可访问范围,起到保护和隔离数据的作用;static修饰符可以把类方法和类属性修饰为静态方法,这样做的好处是对于高频使用的类方法,如工具类方法,可以在没有实例化对象的前提下调用该方法和属性;final修饰符类似于常量定义,被final修饰符修饰的类成员变量或局部变量初始化后,不能被修改。

■ 思考与练习

应用eclipse开发工具建立Addition项目,实现教材内容中的代码案例,体会静态修饰符的用法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值