Java面向对象编程之Java语言中的修饰符

  近日,读了孙卫琴老师的《Java面向对象编程》一书,心中颇有些感悟,想着将其记录下来。

  Java中的修饰符

  在Java语言中,有这样一些单词(说得再准确点儿,应该是形容词):abstract(抽象的)、static(静态的)、public(公共的)、protected(受保护的)、private(私有的)、synchronized(同步的)、native(本地的)、transient(暂时的)、volatile(易失的)和final(不可改变的),它们被成为修饰符,这些修饰符可以修饰类、变量和方法。灵活、正确地运用这些修饰符,会使我们的软件程序更贴切地模拟真实世界中的系统,并且有助于提高软件系统的可复用性、可维护性、可扩展性和系统的运行性能。


  Java中的修饰符的作用域

  •   abstract:类、成员方法
  •   static:成员方法、成员变量
  •   public:类、成员方法、构造方法、成员变量
  •   protected:成员方法、构造方法、成员变量
  •   private:成员方法、构造方法、成员变量
  •   synchronized:成员方法
  •   native:成员方法
  •   transient:成员变量
  •   volatile:成员变量
  •   final:类、成员方法、成员变量、局部变量

  上面所提到的类仅限于顶层类(Top Level Class),而不包括内部类(定义在类或方法中的类)。从上面列出的一系列作用域可以看出,局部变量只能用final修饰,修饰顶层类的修饰符包括:abstract、public以及final,static、protected和private不能修饰顶层类。


  访问控制修饰符

  面向对象的基本思想之一是封装实现细节并且公开接口。Java语言采用访问控制修饰符来控制类,以及类的方法和变量的访问权限,从而向使用者只暴露接口,但能隐藏实现细节。访问控制分4种级别:

  •   公开级别:用public修饰,对外公开。
  • 受保护级别:用protected修饰,向子类及同一个包中的类公开。
  • 默认级别:没有访问修饰符,向同一个包中的类公开。
  • 私有级别:用private修饰,只有类本身可以访问,不对外公开。

  访问级别仅仅适用于类及类的成员,而不适用于局部变量。局部变量只能在方法内部被访问,不能用private、protected或public来修饰  

时间: 2024-12-24 17:38:44

Java面向对象编程之Java语言中的修饰符的相关文章

Java语言中的修饰符

类.方法.成员变量和局部变量的可用修饰符 修饰符 类 成员方法 构造方法 成员变量 局部变量 abstract Y Y _ _ _ static _ Y _ Y _ public Y Y Y Y _ protected _ Y Y Y _ private _ Y Y Y _ synchronized _ Y _ _ _ native _ Y _ _ _ transient _ _ _ Y _ volatile _ _ _ Y _ final Y Y _ Y Y 1.访问控制修饰符: Java语言

关于Java语言中那些修饰符

一.在java中提供的一些修饰符,这些修饰符可以修饰类.变量和方法,在java中常见的修饰符有:abstract(抽象的).static(静态的).public(公共的).protected(受保护的).private(私有的).synchronized(同步的).native(本地的).transient(暂时的).volatile(易失的).final(不可改变的) 二.修饰顶层类的修饰符包括abstract.public和final,而static.protected和private不能修

枚举java语言中的修饰符组合

package model; /*22:37 2019/7/20*/ /* top class的修饰符组合 abstract final public 2 * 2 * 2 warning: abstract final 冲突 最终,共有2*(2*2-1)=6种修饰符组合用于top class */ /* public abstract class PublicAbstractClass{} public final class PublicFinalClass{} abstract class

C#语言中的修饰符汇总

1. 访问修饰符 指定声明的类型和类型成员的可访问性. (1) public:对任何类和成员都公开, 无限制访问;是类型和类型成员的访问修饰符.公共访问是允许的最高访问级别.对访问公共成员没有限制. (2) private:仅仅对该类公开;是一个成员访问修饰符.私有访问是允许的最低访问级别.私有成员只有在声明它们的类和结 构体中才是可访问的. (3) internal:只能值包含该类的程序集中访问该类(只是单独的项目,而不是整个解决方案);是类型和类型成员的访问修饰符.只有在同一程序集的文件中,

C#语言中的修饰符

public:公有访问.不受任何限制. private:私有访问.只限于本类成员访问,子类和实例都不能访问. protected:保护访问.只限于本类和子类访问,实例不能访问. internal:内部访问.只限于本项目(程序集)内访问,其他不能访问. protected internal :内部保护访问.只限于本项目或是本类和子类访问,其他不 能访问 1.类(class)    默认的修饰符:private        可以被修饰的:public,private,internal,protec

Java中的修饰符

在java中,修饰符分为访问权限修饰符和非访问权限修饰符.可以被修饰符修饰的java语言元素有类,变量,方法和接口.下面分别描述在这四个元素上使用修饰符的作用. 类 java中声明类的格式为: 访问修饰符 修饰符 class 类名 extends 父类名称 implements 接口名称{} 其中访问修饰符和修饰符可以互换位置,可以应用于类的访问修饰符为public和package,public表明类可以被任何类使用.package表示包访问权限,它是默认的访问权限,可以省略这个修饰符,使用pa

OOP面向对象编程之java打飞机游戏

#写在前面 继上一篇OOP面向对象编程之俄罗斯方块项目实现过程,OOP面向对象编程之java打飞机游戏,其实写的很简单,也很容易理解,并且注释写的很清楚了,还有问题,自己私下去补课学习(顺便做50个深蹲,嘿嘿,平时干嘛去了),看图:   #完整代码   敌飞机 package com.tarena.fly; import java.util.Random; /** * 敌飞机: 是飞行物,也是敌人 */ public class Airplane extends FlyingObject imp

Java中访问修饰符public、private、protecte、default

Java中访问修饰符public.private.protecte.default的意义讲解:public: Java语言中访问限制最宽的修饰符,一般称之为“公共的”.被其修饰的类.属性以及方法不 仅可以跨类访问,而且允许跨包(package)访问.private: Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”.被其修饰的类.属性以 及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问.protect: 介于public 和 private 之间的一种访问修饰符,一

java学习笔记(三)java中的修饰符abstract、static与final

一.四种访问级别的访问范围 访问级别 访问修饰符 同类 同包 子类 不同的包 公开 public 受保护 protected 默认 没有访问修饰符 私有的 private 二.使用abstract修饰符需要遵守的语法规则 1.抽象类中可以没有抽象方法,但是包含抽象方法的类必须定义为抽象类,即用abstract修饰: 2.抽象类跟抽象方法不能被final修饰符修饰: 3.抽象类中可以有非抽象方法,因为继承抽象类的子类必须重写父类中所有的抽象方法,因此抽象类中不能有抽象构造方法和抽象静态方法: 4.