-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1장 객체, 설계 #1
Comments
멤버 변수를 선언할때 고민해야할 nullable, kotlin property, initial value, constructor 같은 부분이 Java와는 다르게 고려해야할 부분이라 많이 고민을 했는데,, 의견들이 궁금합니다~ |
예제의 Class를 Kotlin의 data class로 옮겨오면서 인지부조화가 온 부분이 있습니다 그래서 까보니까.. data class Audience(
val bag: Bag
) private라고 명시하지 않아도 알아서 멤버변수는 private, getter는 public으로 생성된 것을 확인했습니다 (대쓱) public final class Audience {
@NotNull
private final Bag bag;
@NotNull
public final Bag getBag() {
return this.bag;
}
public final void setBag(@NotNull Bag var1) {
Intrinsics.checkNotNullParameter(var1, "<set-?>");
this.bag = var1;
} 여기서 의문.. data class Audience(
private val bag: Bag
) 멤버변수는 private로 되어있지만, getter/setter가 생성되지 않았다. public final class Audience {
private final Bag bag;
....
} 눈에 보이는 거에 속아 캡슐화가 안되는게 아닌가? 하는 인지부조화가 왔었는데 private set
class Person(val name: String) {
var age: Int = 24
private set
}
|
nullable, kotlin property, initial value, constructor 같은 부분 각각 진짜 Null 일수 있는지, 값이 존재할 수 있는지 "내가 설계 했을 때 어떤 식으로 할까" 를 기준으로 마이그레이션 했습니다 |
전체적인 내용에 대한 궁금증
테스트 코드 구현한 사람 한정
|
No description provided.
The text was updated successfully, but these errors were encountered: