Java语言中的修饰符

  今天学习了下孙伟琴的《Java面向对象编程》,主要是看了第七章的Java语言中的修饰符。

  一流的小说家和三流小书家都会写小说,两者的区别之一是,前者的语言流畅,善于运用贴切的修饰词汇来渲染主题,而后者的语言室苍白无力的,不能鲜明准确地反映主题。例如,从以下3段文章可以看出,是否使用修饰会产生不同的效果。

 

        //没有修饰的语言描述

        小东10:00起床,赶到学校,在教室门口被老师批评了一顿,小东走进教室。

 

 

//采用修饰词来反映小东知错就改

小东10:00起床,急急忙忙赶到学校,在教室门口被老师严厉地批评了一顿,小东惭愧地走进教室。

 

 

//采用修饰词来反映小东玩世不恭

小东10:00起床,不紧不慢赶到学校,在教室门口被老师严厉地批评了一顿,小东满不在乎地走进教室。

 

  并不希望自己能再在文学上有多少创作能力,只希望能在写Java程序员人生道路,能做个一流的Java程序员。呵呵,所以还是好好学习下Java中的修饰符吧。

  Java语言中的修饰符可以修饰类、变量和方法。灵活正确地运用这些修饰符,会使软件程序最贴切地模拟真实世界中的系统,并且有助于提高软件系统的可重用性、可维护性、可扩展性及系统的运行性能。这些修饰符是以下四种:

 

 

1、访问控制修饰符(public、protected、默认和private)

  • public的访问级别最高,其次是protected、默认和private。
  • 成员变量和成员方法可处于4个访问级别中的一个:公开、受保护、默认或私有。
  • 顶层类可以处于公开或者是默认级别,顶层类不能被protected和private修饰。
  • 局部变量不能被访问控制修饰符修饰。

2、abstract修饰符

  • 抽象类不能被实例化。
  • 抽象类中可以没有抽象方法,但包含了抽象方法的类必须被定义为抽象类。
  • 如果子类没有实现父类中的抽象方法,子类必须定义为抽象类。
  • 抽象类不能被定义为private、final和static类型。
  • 没有抽象构造方法。
  • 抽象方法没有方法体。
3、final修饰符

  • 用final修饰的类不能被继承。
  • 用final修饰的方法不能被子类方法覆盖。
  • private类型的方法默认为是final方法,因而不能被子类的方法覆盖。
  • final变量必须是显示初始化,并且只能被赋一次值。

4、static修饰符

  • 静态变量在内存中只有一个拷贝,在类的所有实例中共享。
  • 在静态方法中不能直接访问实例方法和实例变量。
  • 在静态方法中不能使用this和super关键字。
  • 静态方法不能被abstract修饰。
  • 静态方法和静态变量都可以通过类名直接访问。
  • 当类被加载时,静态代码块只被加载一次。类中不同的静态代码块按它们在类中出现的顺序依次执行。

许多修饰符可以连用,例如:

private static final int MAX_COUNT = 1;

public static final void main(String args[]) {};

protected abstract void method();

当多个修饰符连用的时候,修饰符的顺序是可以颠倒的

private static final int MAX_COUNT = 1;

static private final int MAX_COUNT 1= 1;

finalstatic private  int MAX_COUNT = 1;

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值