[英]Call method from class in class
我不知道如何正確地寫一個標題,但我的意思是做出這樣的事情:
public static MusicPlayer _Player = new MusicPlayer();
_Player.Play.Song(TestPath);
MusicPlayer是一個類,在那個類中,我想創建類似屬性或其他類的東西,我不知道如何調用它,這將有兩個方法。 我現在的代碼:
public class MusicPlayer
{
//Variables, Methods and Properties in MusicPlayer
//And then Play which can have two tipes of play.
public static class Play
{
//This one should be called if I want to play one song
public static void Song(String _path)[...]
//And this one when I want to play from list, defined in MusicPlayer class
public static void List()[...]
}
}
你應該做這個:
public class MusicPlayer
{
public class Player
{
public static void Song(String _path)[...]
public static void List()[...]
}
private Player m_player = new Player();
public Player Play
{
get { return m_player; }
}
}
這定義了MusicPlayer
的Player
類。 此外,它還創建了一個Player
類型的成員變量和一個允許您使用MusicPlayer
實例從外部訪問Player
實例的屬性:
var mplayer = new MusicPlayer();
mplayer.Play.Song(...);
如果您不想創建MusicPlayer
的實例,您也可以將其設為靜態:
public class MusicPlayer
{
public class Player
{
public static void Song(String _path)[...]
public static void List()[...]
}
private static Player m_player = new Player();
public static Player Play
{
get { return m_player; }
}
}
您現在可以使用MusicPlayer.Play.Song(...)
而無需創建實例。
你可以做那樣的事情
public class MusicPlayer
{
public MusicPlayer()
{
Play = new Play();
}
public Play Play { get; private set; }
}
public class Play
{
//This one should be called if I want to play one song
public void Song(String _path){}
//And this one when I want to play from list, defined in MusicPlayer class
public void List() { }
}
然后使用喜歡
new MusicPlayer().Play.Song("");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.