C # const
é exatamente a mesma coisa que Java final
, exceto que é absolutamente sempre static
. Na minha opinião, não é realmente necessário que uma const
variável seja não static
, mas se você precisar acessar uma const
variável não- static
é, você pode:
class MyClass
{
private const int myLowercase_Private_Const_Int = 0;
public const int MyUppercase_Public_Const_Int = 0;
/*
You can have the `private const int` lowercase
and the `public int` Uppercase:
*/
public int MyLowercase_Private_Const_Int
{
get
{
return MyClass.myLowercase_Private_Const_Int;
}
}
/*
Or you can have the `public const int` uppercase
and the `public int` slighly altered
(i.e. an underscore preceding the name):
*/
public int _MyUppercase_Public_Const_Int
{
get
{
return MyClass.MyUppercase_Public_Const_Int;
}
}
/*
Or you can have the `public const int` uppercase
and get the `public int` with a 'Get' method:
*/
public int Get_MyUppercase_Public_Const_Int()
{
return MyClass.MyUppercase_Public_Const_Int;
}
}
Bem, agora percebo que essa pergunta foi feita há 4 anos, mas desde que dediquei cerca de 2 horas de trabalho, consistindo em tentar todos os tipos de maneiras diferentes de responder e formatar o código, nesta resposta, ainda estou postando. :)
Mas, para constar, ainda me sinto meio bobo.