亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用另一個類的值

如何使用另一個類的值

C#
30秒到達戰場 2021-11-07 20:29:18
我想要一個類或其他更好的東西來存儲我想在其他類中使用的常量值。例如,我想要一個名為 A 的類,它看起來像public class A{  public int x = 1;}在另一個類中,我想在方法中使用該值:class B{  public void test()  {    int y = A.x;  }}我知道這是錯誤的,這只是我想使用的一個例子。這可能是一個基本問題,但我對編程沒有太多經驗。
查看完整描述

3 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

將所有內容都公開是不好的做法。訪問修飾符設置方法、類或變量的可訪問性。同時,面向對象編程有四大支柱。抽象繼承、多態封裝

希望這一定會幫助你。


同時在您的問題中,如果您確實需要訪問 A 類的行為或方法,您可以將其設為靜態并在另一個類中訪問。


public class A{


    public static int x = 1; 

    public static void print(){

        //some code here

    }

}


public class B{


    public void test(){

        int a = A.x;

        A.print();

    }

}

或者另一種方法是將 x 設為私有并為其設置 getter 和 setter。在類 B 中初始化 A 的實例并通過其實例訪問它。


A obj = new A();

int a = obj.getX();


查看完整回答
反對 回復 2021-11-07
?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

您必須A在 classB中創建 class 的實例才能訪問它的屬性(或者在您的情況下它是 field x)。


internal class A {

    public int X { get; set; } = 1;

}

internal class B {

    private A myInstanceOfA = new A();

    public void test() {

        int y = myInstanceOfA.X;

    }

}

但是,您可以在A不創建本地實例的情況下訪問類的靜態和常量成員:


internal class A {

    public const int X = 1;

}

internal class B {

    public void test() {

        int y = A.X;

    }

}


查看完整回答
反對 回復 2021-11-07
?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

您可能想要的是一個const或static變量,您可以在其中定義一個值并在不初始化類的情況下訪問它。


用你的例子,它會是這樣的:


public class A {

    public const Int32 ConstantVariable = 0;


    // or


    public static Int32 StaticVariable = 0;

}


public class B {

    public void test() {

        Int32 y = A.ConstantVariable;


        // or


        Int32 y = A.StaticVariable;

    }

}

請注意,const變量需要當場初始化一個值并且不能更改值,而static變量可以在運行時分配并隨時更改。


查看完整回答
反對 回復 2021-11-07
  • 3 回答
  • 0 關注
  • 210 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號