java中为按钮添加图片_我们可以在Java接口中为成员定义私有和受保护的修饰符吗?...

java中为按钮添加图片

No, it is not possible to define private and protected modifiers for the members in interfaces in Java.

不可以,无法为Java接口中的成员定义私有修饰符和受保护的修饰符。

  • As we know that, the members defined in interfaces are implicitly public or in other words, we can say the member defined in an interface is by default public.

    众所周知,接口中定义的成员是隐式公共的,换句话说,我们可以说接口中定义的成员默认是公共的。

  • It is possible to define public modifiers for the member in interfaces.

    可以在接口中为该成员定义公共修饰符。

  • In the case of public modifiers, it is not mandatory to prefix "public" with members in interfaces because all the members of the interface are by default public.

    对于public修饰符,由于接口的所有成员默认情况下都是public,因此在接口中的成员之前不必强制给“ public”加上前缀。

  • We will discuss three cases in terms of modifiers for the members in interfaces.

    我们将针对接口中成员的修饰符讨论三种情况。

    1. What will happen, if we define private modifiers for the members in an interface?
    2. What will happen, if we define protected modifiers for the members in the interface?
    3. What will happen, if we define public modifiers for the members in the interface?
    4. What will happen, if we define no modifiers for the members in the interface?

We will see each of the above cases one by one with the help of an example...

在示例的帮助下,我们将逐一看到上述每种情况。

1)在Java接口中为成员定义私有修饰符 (1) Defining private modifiers for the member in interface in Java)

// Java program to demonstrate the example of
// defining private members for the interface 

interface PrivateMemberInterface {
    private String str = "There will be an error.";
    void display();
}

public class Main implements PrivateMemberInterface {
    // override display() of PrivateMemberInterface
    public void display() {
        System.out.print("Private modifiers not allowed");
        System.out.print("for Data Members");
    }

    public static void main(String[] args) {
        // class instantiation
        Main m = new Main();

        // calling display() of Main class
        m.display();

        // Accessing private member of an interface
        System.out.println(str);
    }
}

Output

输出量

/Main.java:5: error: modifier private not allowed here
    private String str = "There will be an error.";
                   ^
1 error

Conclusion: We cannot define private modifiers for the members in interface.

结论:我们不能为接口中的成员定义私有修饰符。

2)在Java接口中为成员定义受保护的修饰符 (2) Defining protected modifiers for the member in interface in Java)

// Java program to demonstrate the example of
// defining protected members for the interface 

interface ProtectedMemberInterface {
    protected String str = "There will be an error.";
    void display();

}

public class Main implements ProtectedMemberInterface {
    // override display() of ProtectedMemberInterface
    public void display() {
        System.out.print("Protected modifiers not allowed");
        System.out.print("for Data Members");
    }

    public static void main(String[] args) {
        // class instantiation
        Main m = new Main();
        // calling display() of Main class
        m.display();
        // Accessing protected member of an interface
        System.out.println(str);
    }
}

Output

输出量

/Main.java:5: error: modifier protected not allowed here
    protected String str = "There will be an error.";
                     ^
1 error

Conclusion: We cannot define protected modifiers also for the members in interface.

结论:我们也不能为接口中的成员定义受保护的修饰符。

3)在Java接口中为成员定义公共修饰符 (3) Defining public modifiers for the member in interface in Java)

// Java program to demonstrate the example of
// defining public members for the interface 

interface PublicMemberInterface {
    public String str = "No error here...";
    void display();
}

public class Main implements PublicMemberInterface {
    // override display() of PublicMemberInterface
    public void display() {
        System.out.print("Public modifiers are allowed" + " ");
        System.out.print("for Data Members");
    }

    public static void main(String[] args) {
        // class instantiation
        Main m = new Main();
        // calling display() of Main class
        m.display();
        System.out.println();
        // Accessing public member of an interface
        System.out.println(str);
    }
}

Output

输出量

Public modifiers are allowed for Data Members
No error here...

Conclusion: We can define public modifiers for the members in an interface and it is valid in java.

结论:我们可以为接口中的成员定义公共修饰符,并且在Java中有效。

4)在Java接口中未为成员定义任何修饰符 (4) Not defining any modifiers for the member in interface in Java)

// Java program to demonstrate the example of
// not defining any modifier for the members in 
// interface 

interface NoModifierMemberInterface {
    String str = "No error here...";
    void display();
}

public class Main implements NoModifierMemberInterface {
    // override display() of NoModifierMemberInterface
    public void display() {
        System.out.print("No modifiers are allowed" + " ");
        System.out.print("for Data Members");
    }

    public static void main(String[] args) {
        // class instantiation
        Main m = new Main();
        // calling display() of Main class
        m.display();
        System.out.println();
        // Accessing no modifiers member of an interface
        System.out.println(str);
    }
}

Output

输出量

No modifiers are allowed for Data Members
No error here...

Conclusion: We can define no modifiers for the members in the interface and it is valid in java because by default modifier for the member is public.

结论:我们无法在接口中为成员定义修饰符,并且在Java中是有效的,因为默认情况下,该成员的修饰符是公共的。

翻译自: https://www.includehelp.com/java/can-we-define-private-and-protected-modifiers-for-the-members-in-interfaces-in-java.aspx

java中为按钮添加图片

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值