C#のプライベート変数
プライベートアクセス指定子を使用すると、クラスはそのメンバー変数とメンバー関数を他の関数やオブジェクトから隠すことができます。同じクラスの関数のみがそのプライベートメンバーにアクセスできます。クラスのインスタンスでさえ、そのプライベートメンバーにアクセスできません。
プライベート変数を作成する-
private double length;
例を見てみましょう。ここで、プライベートに設定されている長さ変数にアクセスしようとすると、次のエラーが発生します。
BoxApplication.Box.length' is inaccessible due to its protection level
今すぐ完全な例を見てみましょう-
例
using System; namespace BoxApplication { class Box { private double length; // Length of a box private double breadth; // Breadth of a box private double height; // Height of a box public void setLength( double len ) { length = len; } public void setBreadth( double bre ) { breadth = bre; } public void setHeight( double hei ) { height = hei; } public double getVolume() { return length * breadth * height; } } class Boxtester { static void Main(string[] args) { Box Box1 = new Box(); // Declare Box1 of type Box Box Box2 = new Box(); double volume; // ACcessing private variables outside the class gives an error. // Box1.length = 10; Box1.setLength(6.0); Box1.setBreadth(7.0); Box1.setHeight(5.0); // box 2 specification Box2.setLength(12.0); Box2.setBreadth(13.0); Box2.setHeight(10.0); // volume of box 1 volume = Box1.getVolume(); Console.WriteLine("Volume of Box1 : {0}" ,volume); // volume of box 2 volume = Box2.getVolume(); Console.WriteLine("Volume of Box2 : {0}", volume); Console.ReadKey(); } } }
-
Pythonにはクラスに「プライベート」変数がありますか?
Pythonクラス自体には「プライベート変数」はありません。 Pythonのすべての変数とメソッドは、デフォルトでパブリックです。変数の名前に二重アンダースコア__プレフィックスを使用することにより、プライベート変数のエミュレーションが行われる場合があります。これにより、これらの変数が非表示になるか、それらを含むクラスの外部で簡単に表示されなくなります。これは、名前マングリングによって実現されます。これらの「プライベート変数」は、特定の回避策コードを使用してアクセスできるため、実際には安全でもプライベートでもありません。したがって、変数名の前に1つのアンダースコア_(セミプライベート)と2つの
-
Pythonクラスのパブリック変数とプライベート変数は何ですか?
パブリック変数 Pythonは、Pythonプログラムで変数にアクセスしたりメンバーメソッドを呼び出したりすることを制限しません。 すべてのPython変数とメソッドはデフォルトでPythonで公開されています。したがって、変数またはメソッドをパブリックにしたい場合は、何もしません。以下の例を見てみましょう- 例 class Mug: def __init__(self): self.color = None self.content = None &