sealed

Sealed classes inside another class in Kotlin can't be compiled: cannot access '<init>' it is private

*爱你&永不变心* 提交于 2020-04-12 08:14:12
问题 If I used the example from the docs, class SomeActivity : AppCompatActivity() { sealed class Expr data class Const(val number: Double) : Expr() data class Sum(val e1: Expr, val e2: Expr) : Expr() object NotANumber : Expr() } it does not compile, with the error: Cannot access '<init>', it is private in 'Expr'. However, moving it outside the enclosing class makes it compile: sealed class Expr data class Const(val number: Double) : Expr() data class Sum(val e1: Expr, val e2: Expr) : Expr()

Do the access levels and modifiers (private, sealed, etc) serve a security purpose in C#?

旧时模样 提交于 2020-01-29 10:42:27
问题 I've seen that you can manipulate private and internal members using reflection. I've also seen it said that a 'sealed' class is more secure that one that isn't. Are the modifiers "public, protected, internal, private, abstract, sealed, readonly" anything more than a gentleman's agreement about design and API use, that can be broken as long as you have access to reflection? And if a hacker is already is running code that calls your API, the game is already lost, right? Is the following

Do the access levels and modifiers (private, sealed, etc) serve a security purpose in C#?

回眸只為那壹抹淺笑 提交于 2020-01-29 10:42:13
问题 I've seen that you can manipulate private and internal members using reflection. I've also seen it said that a 'sealed' class is more secure that one that isn't. Are the modifiers "public, protected, internal, private, abstract, sealed, readonly" anything more than a gentleman's agreement about design and API use, that can be broken as long as you have access to reflection? And if a hacker is already is running code that calls your API, the game is already lost, right? Is the following

Why does the 'sealed' keyword exist in .Net?

荒凉一梦 提交于 2020-01-09 10:38:06
问题 A large number of classes in the .Net framework are marked as 'sealed', preventing you from inheriting those classes with your own. Surely this goes against the nature of object orientation, where you can extend and redefine the behaviour of existing objects. Is there a good reason for the existence of the 'sealed' keyword? As an example, NotifyCollectionChangedEventArgs in Silverlight is sealed. I wanted to create my own version of ObservableCollection that supported AddRange and RemoveRange

Scala's sealed abstract vs abstract class

*爱你&永不变心* 提交于 2019-12-31 08:10:56
问题 What is the difference between sealed abstract and abstract Scala class? 回答1: The difference is that all subclasses of a sealed class (whether it's abstract or not) must be in the same file as the sealed class. 回答2: As answered, all directly inheriting subclasses of a sealed class (abstract or not) must be in the same file. A practical consequence of this is that the compiler can warn if the pattern match is incomplete. For instance: sealed abstract class Tree case class Node(left: Tree,

Reference outside the sealed class in Kotlin?

不问归期 提交于 2019-12-31 02:45:15
问题 I'm trying to create a class that uses its own state to operate on the state of an external object that it holds a reference to. The external object can be of class A or B, which are similar, but not controlled by the author. So a sealed class is created to access their common attributes, per this earlier answer from @SimY4. // *** DOES NOT COMPILE *** class A { // foreign class whose structure is not modifiable val prop get()= "some string made the Class-A way" } class B { // foreign class

How to implement ViewHolder using sealed class in Kotlin

≡放荡痞女 提交于 2019-12-24 01:12:12
问题 I saw an interesting viewholder implementation in this tweet https://twitter.com/AndroidDev/status/972502799496790018 override fun onBindViewHolder(holder: SealedAdapterViewHolder, position: Int) { return when (holder) { is HeaderHolder -> holder.displayHeader(items[position]) is DetailsHolder -> holder.displayDetails(items[position]) } } Unfortunately i can't figure out how to implement thouse holders. And I didn't find any examples of this trick. In my viewholders I have to extend

Change “ToString” for a sealed class

北城以北 提交于 2019-12-23 16:05:01
问题 I have a class I am working with: public sealed class WorkItemType It's ToString is weak (Just shows Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemType ). Is there any way to override this to show the name of the WorkItemType ? Normally I would just aggregate the value in a new class, but I am using this for bindings in WPF (I want to have a list of WorkItemTypes in a combo box and assign the selected value to a bound WorkItemType variable.) I think I am out of luck here, but I

c++ sealed and interface

爱⌒轻易说出口 提交于 2019-12-23 12:43:32
问题 I noticed that there are sealed and interface keywords in C++. Is this just for CLR C++? If not, when were sealed and interface added to the C++ standard? Do they have the same meaning in C++ as they do in C#? If not, how do I get the equivalent in standard C++? 回答1: sealed and interface keywords are only for C++/CLI. See Language Features for Targeting the CLR for more details. In standard C++ interface could be replaced with pure virtual class and multiple inheritance. Sealed keyword could

'Protected member in sealed class' warning (a singleton class)

北战南征 提交于 2019-12-23 09:03:19
问题 I've implemented a singleton class and keep getting the warning that a method I'm writing is a 'new protected member declared in a seal class.' It's not affecting the build but I don't really want to ignore the warning in case it causes problems later on? I understand a sealed class is a class that cannot be inherited - so it's methods cannot be overridden, but I still don't get why the following code would give me the warning (is it due to the use of the singleton design?): namespace