草庐IT

JAVA的四种访问修饰符

JAVA中的访问修饰符,主要用于设置类、属性、方法的访问级别,有以下四种:修饰符同一个类同一个包子类任何地方public(公共的)YYYYprotected(受保护的)YYYdefault(默认的)YYprivate(私有的)Y1、public修饰符:public修饰符表示公开的,公共的。不同类、不同包下都可以访问1个java文件中只可以有一个public修饰的类,并且类名需要和文件名相同2、protected修饰符protected修饰符表示受保护的,它主要的作用是保护子类,子类可以用它修饰的成员,其他的不可以protected修饰符可以被本类、同一个包中的类、不同包中的子类所访问到prot

java - 静态修饰符和静态 block 之间的区别

这个问题在这里已经有了答案:Whatisthedifferencebetweenastaticandanon-staticinitializationcodeblock(9个回答)关闭7年前。有人向我解释以下两种说法的区别吗?由static代码块初始化的staticfinal变量:privatestaticfinalStringfoo;static{foo="foo";}一个由赋值初始化的staticfinal变量:privatestaticfinalStringfoo="foo"; 最佳答案 在此示例中,有一个细微的差异-在您的第

java - 静态修饰符和静态 block 之间的区别

这个问题在这里已经有了答案:Whatisthedifferencebetweenastaticandanon-staticinitializationcodeblock(9个回答)关闭7年前。有人向我解释以下两种说法的区别吗?由static代码块初始化的staticfinal变量:privatestaticfinalStringfoo;static{foo="foo";}一个由赋值初始化的staticfinal变量:privatestaticfinalStringfoo="foo"; 最佳答案 在此示例中,有一个细微的差异-在您的第

java - Java中的默认访问修饰符是什么?

这个问题在这里已经有了答案:WhatisthedefaultaccessspecifierinJava?(12个回答)关闭7年前。如果我没有明确说明方法或实例变量的默认访问修饰符是什么?例如:packageflight.booking;publicclassFlightLog{privateSpecificFlightflight;FlightLog(SpecificFlightflight){this.flight=flight;}}这个构造函数的访问修饰符是protected还是封装的?同一个包中的其他类,即flight.booking,可以调用这个构造函数吗?

java - Java中的默认访问修饰符是什么?

这个问题在这里已经有了答案:WhatisthedefaultaccessspecifierinJava?(12个回答)关闭7年前。如果我没有明确说明方法或实例变量的默认访问修饰符是什么?例如:packageflight.booking;publicclassFlightLog{privateSpecificFlightflight;FlightLog(SpecificFlightflight){this.flight=flight;}}这个构造函数的访问修饰符是protected还是封装的?同一个包中的其他类,即flight.booking,可以调用这个构造函数吗?

java - 什么是 transient 和 volatile 修饰符?

谁能解释一下transient和volatile修饰符在Java中的含义? 最佳答案 volatile和transient修饰符可以应用于类1的字段,而与字段类型无关。除此之外,它们是无关的。transient修饰符告诉Java对象序列化子系统在序列化类的实例时排除该字段。当对象被反序列化时,该字段将被初始化为默认值;即null用于引用类型,零或false用于原始类型。请注意,JLS(参见8.3.1.3)没有说明transient的含义,而是遵循JavaObjectSerializationSpecification.其他序列化机制

java - 什么是 transient 和 volatile 修饰符?

谁能解释一下transient和volatile修饰符在Java中的含义? 最佳答案 volatile和transient修饰符可以应用于类1的字段,而与字段类型无关。除此之外,它们是无关的。transient修饰符告诉Java对象序列化子系统在序列化类的实例时排除该字段。当对象被反序列化时,该字段将被初始化为默认值;即null用于引用类型,零或false用于原始类型。请注意,JLS(参见8.3.1.3)没有说明transient的含义,而是遵循JavaObjectSerializationSpecification.其他序列化机制

java - Java 是否有 "private protected"访问修饰符?

我看到一些引用文献提到了Java中称为privateprotected的访问修饰符(这两个词放在一起):privateprotectedsomeMethod(){}我发现其中一个提到这个的页面是here.我的学校课也提到了这个访问修饰符(并说它存在)。但是,使用它会导致Java语言出错。我尝试了变量和方法,我很确定它不存在,但我想解释发生了什么。考虑过,然后拒绝?还是在较新版本的Java中被删除了?编辑:我不是在寻找有关protected关键字的信息。 最佳答案 移除访问修饰符Java最初确实有privateprotected修饰符

java - Java 是否有 "private protected"访问修饰符?

我看到一些引用文献提到了Java中称为privateprotected的访问修饰符(这两个词放在一起):privateprotectedsomeMethod(){}我发现其中一个提到这个的页面是here.我的学校课也提到了这个访问修饰符(并说它存在)。但是,使用它会导致Java语言出错。我尝试了变量和方法,我很确定它不存在,但我想解释发生了什么。考虑过,然后拒绝?还是在较新版本的Java中被删除了?编辑:我不是在寻找有关protected关键字的信息。 最佳答案 移除访问修饰符Java最初确实有privateprotected修饰符

java - 在 Java 中适用时使用 "final"修饰符

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭10年前.在Java中,有一种做法是声明每个变量(本地或类),如果它们确实是参数final。虽然这使代码更加冗长,但这有助于轻松阅读/掌握代码,并且由于意图明确标记,还可以防止错误。你对此有什么想法,你遵循什么? 最佳答案 沉迷于:Final字段-将字段标记为final会强制它们在构造结束时设置,使该字段引