小编tyr*_*302的帖子

为什么我不能在显式实现接口的类中调用方法?

这是故事.我创建了一个界面IVehicle.我明确地在我的类中实现了接口Vehicle.cs.

这是我的界面:

Interface IVehicle
{
        int getWheel();
}
Run Code Online (Sandbox Code Playgroud)

这是我的班级:

class Vehicle: IVehicle
{

     public int IVehicle.getWheel()
     {
         return wheel;
     }

     public void printWheel()
     {
         Console.WriteLine(getWheel());
     }
}
Run Code Online (Sandbox Code Playgroud)

请注意,这getWheel()是明确实现的.现在,当我尝试在我的Vehicle类中调用该方法时,我收到一个错误,指示getWheel()当前上下文中不存在该错误.有人能帮助我理解我做错了什么吗?

c# explicit interface

37
推荐指数
2
解决办法
1万
查看次数

Java的"属性"是否与C#中的属性相同?

在C#中,您可以使用属性使数据字段可公开访问(允许用户直接访问它),同时保留在这些直接访问的字段上执行数据验证的功能.Java有类似的东西吗?对于Instance,假设存在一个带有以下实现的C#类(见下文):

public class newInt{

    public newInt(){...}

    public int x{
        get{ return this.x }
        set{ this.x = isValid(value) }
    }
}

private static int isValid(int value){...}
Run Code Online (Sandbox Code Playgroud)

类中的这个定义允许用户在从中检索值并为其赋值时"自然地"使用数据字段'x'.以下是它将如何在主要使用.

public class Test{

    public static void main(String[] args){

        newInt a = new newInt();
        a.x = 50;

        int b = a.x;
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是...... java也可以这样做吗?如果是这样,它叫什么?

c# java properties

18
推荐指数
2
解决办法
5153
查看次数

标签 统计

c# ×2

explicit ×1

interface ×1

java ×1

properties ×1