Type.IsNotPublic Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá hodnotu označující, zda Type není deklarován jako veřejný.
public:
property bool IsNotPublic { bool get(); };
public bool IsNotPublic { get; }
member this.IsNotPublic : bool
Public ReadOnly Property IsNotPublic As Boolean
Hodnota vlastnosti
true
Type pokud není deklarován jako veřejný a není vnořeným typem; falsev opačném případě .
Implementuje
Příklady
Tento příklad používá IsNotPublic vlastnost k získání viditelnosti typu.
using System;
using System.IO;
using System.Reflection;
class Example
{
public static void Main()
{
// Get the Type and MemberInfo.
Type t = Type.GetType("System.IO.File");
MemberInfo[] members = t.GetMembers();
// Get and display the DeclaringType method.
Console.WriteLine("\nThere are {0} members in {1}.",
members.Length, t.FullName);
Console.WriteLine("Is {0} non-public? {1}",
t.FullName, t.IsNotPublic);
}
}
// The example displays output like the following:
// There are 60 members in System.IO.File.
// Is System.IO.File non-public? False
open System
// Get the Type and MemberInfo.
let t = Type.GetType "System.IO.File"
let members = t.GetMembers()
// Get and display the DeclaringType method.
printfn $"\nThere are {members.Length} members in {t.FullName}."
printfn $"Is {t.FullName} non-public? {t.IsNotPublic}"
// The example displays output like the following:
// There are 60 members in System.IO.File.
// Is System.IO.File non-public? False
Imports System.IO
Imports System.Reflection
Module Example
Public Sub Main()
'Get the Type and MemberInfo.
Dim t As Type = Type.GetType("System.IO.File")
Dim members As MemberInfo() = t.GetMembers()
'Get and display the DeclaringType method.
Console.WriteLine("There are {0} members in {1}.",
members.Length, t.FullName)
Console.WriteLine("Is {0} non-public? {1}",
t.FullName, t.IsNotPublic)
End Sub
End Module
' The example displays output like the following:
' There are 60 members in System.IO.File.
' Is System.IO.File non-public? False
Následující příklad kódu ukazuje, proč nelze použít IsPublic a IsNotPublic pro vnořené třídy.
public class A
{
public class B { }
private class C { }
}
module A =
type B() = class end
type C() = class end
Public Class A
Public Class B
End Class
Private Class C
End Class
End Class
U vnořených tříd ignorujte výsledky IsPublic a IsNotPublic věnujte pozornost pouze výsledkům IsNestedPublic a IsNestedPrivate. Výstup reflexe pro tento fragment kódu by byl následující:
| Třída | IsNotPublic | IsPublic | IsNestedPublic | IsNestedPrivate |
|---|---|---|---|---|
| A | NEPRAVDA | TRUE | NEPRAVDA | NEPRAVDA |
| B | NEPRAVDA | NEPRAVDA | TRUE | NEPRAVDA |
| C | NEPRAVDA | NEPRAVDA | NEPRAVDA | TRUE |
Poznámky
Nepoužívejte tuto vlastnost s vnořenými typy; IsNestedPublic místo toho tuto vlastnost použijte.
Pokud aktuální Type představuje parametr typu obecného typu, vrátí tato vlastnost false.