Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I want to understand the concept behind this Kotlin intent. What does Activity::class.java
mean in Kotlin ?
Kotlin is designed to be interoperable with Java. Pretty much all Java code can be called from Kotlin and vice versa without any issues.
What does Activity::class.java ?
Consider this expression val c = MyClass::class, In it the reference is a value of type KClass.
To obtain a Java class reference, we need to use the .java property on a KClass instance.
If you execute below code
var ktString = String::class
println(ktString)
var javaString = String::class.java
println(javaString)
Output will be
class kotlin.String
class java.lang.String
.java helps to get mapped type between Java and Kotlin at runtime. Please refer Kotlin Docs for list of mapped types.
Related
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 2 years ago.
Improve this question
Other than the fact that the compiler automatically generates certain functions for Data Class, what is the fundamental difference between them?
In Kotlin, classes declared with the data class keywords simply get some extra methods generated:
equals
hashcode
toString
copy
componentX
Declaring a regular class and defining these methods manually yields exactly the same thing. There is no other difference at bytecode level.
You do however have some extra limitations (no non-property constructor arguments, limitations on inheritance...), but these are just compile-time limitations so that the generated methods behave in a predictable/non surprising way.
The official doc covers everything in detail about them.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
There are enough posts about how to use MockK and Mockito, but what's the import difference between them, what's your preference when using a Mocking framework in Kotlin and why?
MockK introduces itself as a "mocking library for Kotlin".
Mockito states "Tasty mocking framework for unit tests in Java" (and as a side-note: Mockito existed already before Kotlin).
So, already on the first page you have the most important difference. That being said, if you want to use mocks and you are using Kotlin, I would suggest you look up MockK... if the issues there do not affect you, you are relatively safe. If you are familiar with Mockito and it isn't too cumbersome for you to use with Kotlin (e.g. try to use when), then that might be ok too.
(Finally... I don't use mocks anymore... most of the time I find too many things are mocked, that shouldn't even be mocked at all... but those are just my 2 cents here)
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I want use attributes in C# code which will work in my project which uses Mono.
It is possible to get class attributes from Mono runtime? And how, if it is possible?
A little explanation:
This is my class with attribute:
[SomeAttribute]
public class SomeClass { /* ... */ }
And somewhere in my C++ code I start Mono and load assembly with this class.
In C++ code I want to discover attributes of this SomeClass and perform some actions. So how can I do this? Can Mono tell what attributes used in this class?
It's going to be difficult to do this from the C++ side, so what you probably want to do is get the attributes as normal from within your C# class:
typeof(SomeType).GetAttributes()
And then call a function from your C++ code to actually access that information.
Using mono to call C# from C/C++
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I am looking for something like Java annotations (a way to mark a field or a method with metadata) in Objective c, but i can't find anything that is really a surrogate of this Java Feature.
Is there a way to achieve the same result of a Java annotation in Objective-C ?
Basically in the actual situation i'm trying to mark some fields in a class that i want to export with a serializer, i want to mark all fields in the class that have to be exported or serialized ...
Is there some other way to mark those fields ?
I think you are probably looking for : ObjectiveCAnnotate
Officially, there is no java-like annotation support in Objective-C. But there is a possible workaround to achieve this goal. Use formatted comments as annotation, then write a parser to parse those comment annotations and save them as a file from which you can read the annotations at runtime.
I have implemented a project named ROAnnotation which use this method to provides runtime java-like key-value pairing annotation at class/method/property for Objective-C. I think that is what you need.
ROAnnotation on GitHub
The most common way to provide meta data about a class (and its instances) seems to be to provide a class method which returns the information.
In your case, an array with the names of the properties to serialize, for instance.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I've seen impl used as namespaces and as a class suffix in a number of different .net and Java libraries. I just want to know what it means and why it is used.
It stands for Implementation.
It's a Java convention.
Often in java (particularly J2EE) you will get an object from some factory, and then use it.
That object's type is often given to you as an interface, so that you don't need to know the actual class, just its methods.
An impl class is usually a class that implements the behaviour described by one of these interfaces.
It's short for "implementation". Generally it's used when the parent package contains abstract classes, interfaces, and perhaps some factory classes which are the main point of access, and then the impl package contains various concrete implementations of those abstract classes and interfaces.