类的高级概念

Posted zdf-2315033625

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类的高级概念相关的知识,希望对你有一定的参考价值。

1.理解访问修饰符

类的每一个成员(包括成员变量、方法和构造器)都有一个访问修饰符,用来判断谁可以访问该成员。访问修饰符允许我们在设计程序的时候,就考虑到谁可以访问一个对象的不同属性和行为。

Java为类中的成员提供了四种访问级别,按照访问权限由大到小排列如下:

公开访问级别:使用public关键字修饰。用public关键字修饰的成员对外公开,即公开成员可以被任何其它对象访问。

受保护访问级别:使用protected关键字修饰。受保护的成员可以被同一包中的类所访问,还可以被类的子类所访问,不管子类是在哪个包中。

默认访问级别:没有访问修饰符。默认访问级别的成员可以被同一包中的其它类所访问。

私有访问级别:使用private关键字修饰。它是四种访问修饰符中级别最低的。私有成员只有类本身可以访问,不对外公开。

受保护和默认访问是相似的,因为二者都授予可以访问同一包中的其它类。受保护访问实际上比默认访问的限制更小,因为受保护访问也授予访问在包外的子类。

2.封装

封装是使类中的成员变量都是private,并提供public方法访问这些成员变量的技术。如果一个成员变量被声明为private,那么它就不能被其它类访问,从而隐藏了类中的成员变量。因此,封装也被称为数据隐藏。

继承,封装,多态,抽象是面向对象的四大基本特征。

封装有很多好处,包括:

类的成员变量可以成为只读或者只写的。类可以对存储在其成员变量中的内容有一个整体的控制。类的用户不需要知道类是如何存储数据的。

3.理解静态成员

类的静态成员经常被称为类成员,因为静态成员与类相关,而不是类的某个实例。非静态的成员变量和方法经常被称为实例成员,因为非静态的成员变量和方法只存在于类的实例中。

类的非静态成员变量和方法在类没有实例化之前是不存在的。但是,静态成员是与类相关联的。JVM在加载类到内存后,就给静态成员变量和方法分配了内存。也就是说,类一旦加载后,我们就可以马上使用静态成员变量和方法了。

静态成员变量和方法不能使用引用来访问,因为引用是指类的实例,而我们不需要类的实例来访问静态成员。访问静态成员要使用类名。

 

 

以上是关于类的高级概念的主要内容,如果未能解决你的问题,请参考以下文章

类的高级概念

类的高级概念

第8章 类的高级概念

JavaOO 类的高级概念

PHP面向对象初中高级之由浅入深

Yii2基本概念之——属性(property)