当前位置: 首页 > 编程笔记 >

关于Java中修饰符的总结(fina除外)

吕翰飞
2023-03-14
本文向大家介绍关于Java中修饰符的总结(fina除外),包括了关于Java中修饰符的总结(fina除外)的使用技巧和注意事项,需要的朋友参考一下

public/protected/private

public表示公开,private表示私有,protected表示保护,什么都不写表示默认default。

方法:

public protected default private

√ √ √ √ 同一类中

√ √ √ × 同一包中

√ √ × × 子类中

√ × × × 不同包中

成员变量:

考虑的安全性和健壮性的问题,成员变量一般为私有,并对外提供一些public的方法修改成员变量,在修改的方法中对输入进行判断和控制。

Private成员变量只能在类的内部使用。Public的成员变量可以在类的外部使用。

类:

类的权限修饰符只有不加和public两种。不加表示只有同一个包的类可以访问,public类所有的其他类都可以访问。

Static

意为静态,用于修饰成员变量、方法、代码块。

静态成员变量

静态成员变量随着类的加载而加载,多个对象共享该静态成员变量。看如下代码:

静态方法

当修饰方法的时候,这个方法随着类的加载而加载,直接通过类名来调用。很多工具类中的方法都是静态的,直接通过“类名.方法名”调用。不过静态方法中不能使用非静态成员变量和非静态方法。

静态代码块

静态代码块(java的类在产生对象的时候,在调用构造方法的时候,还会调用构造代码块)。

请看下列代码(证明构造方法、构造语句、静态构造语句运行的先后顺序):

需要注意的是:

(1)静态方法不能调用非静态方法, 静态的方法是在构造该类时加载的,类加载时会加载静态的方法;此时非静态方法还没有加载,类初始化后才加载非静态方法;所以静态方法不能调用非静态方法。通过在静态方法的内部创建对象(或形式参数来传递的对象)来间接访问是完全可以的。

(2)java中的main方法必须写成static的,因为,在类加载时无法创建对象,静态方法可以不通过对象调用。所以在类加载时就可以通过main方法入口来运行程序。

注意:父类中是静态方法,子类中不能覆盖为非静态方法。在符合覆盖规则的前提下,在父子类中,父类中的静态方法可以被子类中的静态方法覆盖,但是没有多态。

一个类在什么时候被加载?时机 (延迟加载,能不加载就不加载

(1)new 一个对象的时候,加载

这个很好理解,不解释了。(2)没有创建对象,访问类中静态成员(方法和属性)

(3)声明一个类的引用,不加载(4)创建子类,先加载父类,再加载子类

(5)父类中的公开静态方法,子类继承,使用子类的类名调用此方法,加载父类

Abstract

这个修饰符表示抽象,可以用在方法和类前面。

抽象方法表示,类应该具备此功能,但不同的子类应该有不同的实现方式,所以没有定义具体如何做。具体如何做由子类自己实现。子类在实现所有抽象方法后才能new对象。

如有类的内部有抽象方法,则类也必须是抽象的。抽象类不能直接new对象。抽象类中可以有非抽象方法。

以上就是小编为大家带来的关于Java中修饰符的总结(fina除外)的全部内容了,希望对大家有所帮助,多多支持小牛知识库~

 类似资料:
  • 本文向大家介绍vue事件修饰符和按键修饰符用法总结,包括了vue事件修饰符和按键修饰符用法总结的使用技巧和注意事项,需要的朋友参考一下 之前关于vue事件修饰符和按键修饰符的一点分析,最近需要回顾,就顺便发到随笔上了 在事件处理程序中调用 event.preventDefault() 或 event.stopPropagation() 是非常常见的需求。尽管我们可以在 methods 中轻松实现这

  • 本文向大家介绍Java final 修饰符知识点总结(必看篇),包括了Java final 修饰符知识点总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下 final从字面上理解含义为“最后的,最终的”。在Java中也同样表示出此种含义。 final可以用来修饰变量(包括类属性、对象属性、局部变量和形参)、方法(包括类方法和对象方法)和类。 1. final修饰类: final修饰类即表示此类

  • 本文向大家介绍C#语言中的修饰符汇总,包括了C#语言中的修饰符汇总的使用技巧和注意事项,需要的朋友参考一下 修饰符是用于限定类型以及类型成员的申明的一种符号。 下面主要从C#中的访问修饰符,作用于类和结构的修饰符,用在方法或变量的修饰符和特殊作用的修饰符四种,来给大家介绍。 1. 访问修饰符 指定声明的类型和类型成员的可访问性。 (1) public:是类型和类型成员的访问修饰符。公共访问是允许的

  • 本文向大家介绍Java接口中的修饰符,包括了Java接口中的修饰符的使用技巧和注意事项,需要的朋友参考一下 示例 《 Oracle Java样式指南》指出: 当修饰符是隐式的时,不应将它们写出来。 (有关上下文和指向实际Oracle文档的链接,请参见Oracle Official Code Standard中的修饰符。) 此样式指南特别适用于界面。让我们考虑以下代码片段: 变数 所有接口变量都是具

  • 我正在编写代码以匹配给定字符串或行的方法声明。这就是我的问题所在。当试图匹配修饰符时,当声明 工作。我一直都是这样 这就是我的问题。两者有什么区别,所有修饰符都一样吗?我相信这是有原因的,松散的顺序不是设计决定。 哦,如果有人知道匹配给定字符串的方法的最佳方法,请告诉我。谢谢。现在我正在使用正则表达式。

  • 主要内容:final 修饰变量,final修饰方法,final修饰类,final 修饰符使用总结final 在 Java 中的意思是最终,也可以称为完结器,表示对象是最终形态的,不可改变的意思。final 应用于类、方法和变量时意义是不同的,但本质是一样的,都表示不可改变,类似 C# 里的 sealed 关键字。 使用 final 关键字声明类、变量和方法需要注意以下几点: final 用在变量的前面表示变量的值不可以改变,此时该变量可以被称为常量。 final 用在方法的前面表示方法不可以