inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

자바에서 2바이트 크기인 char에 할당되는 3바이트 크기의 한글...?

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. OutputStreamWriter, InputStreamReader를 이용해 한글을 파일에 쓰고 읽는 내용이 수업에 있는데요. UTF-8은 한글을 3바이트로 저장한다고 되어있고, 수업 때 작성한 코드를 보면 한글을 char 타입으로 저장이 잘 되는 것을 확인할 수 있습니다. (수업에서는 int형으로 저장했다가 이를 char형으로 캐스팅한것이지만 제가 따로 코딩을 해보아도 char 자료형에 한글이 잘 저장되더라구요) utf-8 에서는 한글을 3바이트로 저장하는데 자바에서 2바이트 크기인 char자료형에 잘 저장될 수 있는지 찾아보았는데, 자바에서는 변형된 utf-8을 쓴다고 하고 뭔가 굉장히 자세한 내용이 있었습니다. 그냥 자바에서는 utf-8에서는 3바이트로 저장되는 한글을 특별한 방법으로 2바이트로 저장한다고 알고있으면 될까요? 근데 또 한글로 저장해놓은 String을 바이트배열로 바꾸면 한글자당 세개의 바이트가 나와가지고 이해가 어렵습니다..

  • java
  • 네트워크
  • 객체지향
문예찬 댓글 1 좋아요 0 조회수 362

완강 후 Kotlin 이런저런 질문 드려봅니다!

해결됨

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

안녕하세요! 최태현 지식공유자님 코틀린 강의 만들어주셔서 감사합니다! 💚 실제로 코프링 개발자로 1년정도 근무했던 경험이 있었는데.. 일했던 날짜와 한참 늦은 2024년 말이지만 추후에 강의를 완강하게 됐는데 매우 유익했습니다 몇가지 질문이 있어서 질문 남깁니다!! 질문들 TabWidth에 대해서 IntelliJ에 보시면 tabWidth를 2로 설정하셨는데, 특별한 이유가 있으신가요? 보통 저는 4로 설정하는 편이어서요! 순수함수에 대해서 제가 알기로는 내부의 scope에서 동작할때 외부의 요인이 내부의 값을 바꾸지 못하거나 내부의 요인으로 외부의 값이 바뀌지 못하계 경계가 있어서 side effect가 없는 함수를 뜻하는 걸로 알고있는데요 Java는 그렇기에 Stream api를 사용할때 final이 아닌 외부의 값을 참조하지 못하기때문에 좀 더 안전하게 작성할 수 있는데, 코틀린은 Closure, Currying 등을 허용하기 때문에 개발자의 실수를 더 많이 일으킬 가능성을 열어둔 것은 아닌지 궁금합니다 OOP와 FP에 대해서 자바같은 경우는 함수형 인터페이스또는 인터페이스 구현체를 익명클래스나 익명함수 등으로 넘겨서 FP를 모방하는걸로 알고있는데요, 대신 최소한의 getter/setter를 추가하고 행위를 나타내는 메서드명을 외부로 노출하고(public..), 그 메서드는 내부호출(private)로 캡슐화를 할 수 있는데, 코틀린처럼 invoke가 될 수 있는 함수를 인자로 넘기면 아래와 특정한 행위를 나타내는 이름이 아닌 행위 자체를 넘기게 돼서 객체의 역할과 책임을 나타내는 메서드가 없게 되서 rich domain model이 아닌 anemic domain model이 되는게 아닌지 궁금합니다 // OOP fun doHobby(person: Person?) { println("${person?.hobby}생활을 즐기고 있습니다") } fun beAging(person: Person?) { println("내년에 ${person?.age?.plus(1)}만큼 늙어갈 예정입니다") } fun mainOOP() { val person = Person("보키", 20) doHobby(person) beAging(person) } // FP fun doSomething(person: Person?, run: () -> Unit) { } fun mainFP() { Person("보키", 20).run { doSomething(this) { println("${hobby}생활을 즐기고 있습니다") } } Person("보키", 20).run { doSomething(this) { println("내년에 ${age+1}만큼 늙어갈 예정입니다") } } Person("보키", 20).run { doSomething(this) { println("런닝중입니다 건들지마시오") } } } data class에 대해서 대부분의 기능들이 강의에 녹아있기는 하지만 data class의 강력한 기능 중 하나인 copy 메서드는 백엔드의 프로덕션 개발과 테스트 코드에서 어디 부분에 사용될 수 있을까요? 이건 많이 강의 주제를 넘어간 질문이긴 하지만.... Kotlin+Springboot+JPA 를 사용할때 data class/class 중 어떤 클래스로 Entity를 만드시는지 궁금합니다. MySQL or MongoDB or PostgreSQL에서 어떤 클래스와 궁합이 좋은지. data class를 사용한다면 copy를 어느 부분에 사용하면 좋을지도 알고싶습니다! 강의내용과는 많이 무관하기에(코틀린이 아닌 서버, 타 라이브러리, 인프라(DB)까지 논의확장을 하였음) 답하기 어렵다면 안해주셔도 괜찮습니다 Scope Func에 대해서 저는 Kafka, Configuration 등에서 기본객체를 가져와서 apply를 이용해서 초기값 -> 덮어씌우는 방식을 주로 사용했고 with구문을 이용해서 log를 편하게 했었는데 scope func의 또 다른 좋은 선례도 알고싶습니다! Ex1) private fun <K : Any, V : Any> initConsumerProps( keyDeSerClass: Class<out Deserializer<K>>, valueDeSerClass: Class<out Deserializer<V>> ): Properties = Properties().apply { put(BOOTSTRAP_SERVERS_CONFIG, "localhost:9092") put(KEY_DESERIALIZER_CLASS_CONFIG, keyDeSerClass.name) put(VALUE_DESERIALIZER_CLASS_CONFIG, valueDeSerClass.name) put(GROUP_ID_CONFIG, "group-02") put(MAX_POLL_INTERVAL_MS_CONFIG, "60000") } Ex2) for (record in consumerRecords) { with(record) { logger.info { "key: ${key()}, partition: ${partition()}, offset: ${offset()}, value: ${value()}" } } } method reference에 대해서 어떤 코드에서는 let(::XX), 또 다른 코드에서는 let { ... }방식이 사용될 때가 있는데, 어떤게 성능상 또는 가독성에서 좋은지도 궁금합니다!

  • java
  • kotlin
  • 객체지향
보키 댓글 2 좋아요 3 조회수 450

HashMap

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

HashMap 강의 듣고있는데 HashMap<String, Integer> map에서 Integer가 아닌 int를 쓰면 왜 안되는지 궁금합니다.

  • java
  • 객체지향
류경완 댓글 2 좋아요 0 조회수 104

요구사항이 추가 될 때마다 하나의 일급 컬렉션을 재사용 하나요? 아니면 새롭게 만들어주나요?

해결됨

Readable Code: 읽기 좋은 코드를 작성하는 사고법

학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 안녕하세요 우빈님! 프로젝트를 진행중인데, User 라는 엔티티가 있고, List<User> 를 감싸는 Users 라는 일급 컬렉션을 만들었습니다. import java.util.Collections; import java.util.List; import java.util.Optional; /** * * List<User>를 감싸는 일급 컬렉션 * */ public class Users { private final List<User> users; private Users(List<User> users) { this.users = Collections.unmodifiableList(users); } public static Users from(List<User> users) { return new Users(users); } public List<User> getUsers() { // return new ArrayList<>(users); return Collections.unmodifiableList(this.users); } // 메소드 명으로 hasNotEnoughUsers()? hasNotBothSenderAndReceiver()? public boolean hasNotEnoughUsers() { return users.size() <= 1; } public Optional<String> getSlackIdById(Long userId) { return users.stream() .filter(user -> user.getId().equals(userId)) .findFirst() .map(User::getSlackId); } } 현재 사용 용도는 slack 메시지를 보내기 위한 발신자, 수신자의 정보를 가져와서 처리하는 용도인데요. 문득 든 생각이 지금 용도 말고 새로운 용도로 일급 컬렉션을 써야 한다면, 예를 들어 배송 담당자의 정보를 가져와서 처리 하는 용도가 필요해졌고, 일급 컬렉션을 적용해야 한다면, 지금의 Users 일급 컬렉션의 메서드를 추가해서 사용하는 건지, 새롭게 DeliveryStaffUsers 를 만들어서 사용하는건지, 우빈님께서는 어떻게 사용하시는지 궁금합니다.

  • 객체지향
  • 리팩토링
  • 클린코드-기획전
  • 일급컬렉션
고리오영감 댓글 2 좋아요 1 조회수 236

확장함수 스타일 질문

해결됨

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님 9:54쯤에 질문이 있습니다 val 또는 fun으로 확장함수를 만들 수 있는데.. 두가지 방식의 차이점이 있나요? 또는 이펙티브 코틀린 등등에서 더 선호하는 방식이 있는지, 안티패턴이나 best practice가 있다면 알고 싶습니다. 차이점이 있다면 확장함수에 val을 사용한 경우 custom getter방식으로 구현되고 호출부에 ()가 없는 반면, fun키워드를 사용한 경우에는 get()이 사용되지 않고 호출부에 ()를 해줘야 되는 것 같습니다 1번방식: 강의에서 나온대로 val _ 정의부: val List<Fruit>.samePriceFilter: List<Fruit> get() = this.filter(Fruit::isSamePrice) _ 호출부: val samePriceFruits2 = fruitsInList.flatMap { it.samePriceFilter } 2번방식: fun으로 사용 _ 정의부: fun List<Fruit>.samePriceFilter(): List<Fruit> { return this.filter(Fruit::isSamePrice) } _ 호출부: val samePriceFruits2 = fruitsInList.flatMap { it.samePriceFilter() }

  • java
  • kotlin
  • 객체지향
보키 댓글 2 좋아요 0 조회수 165

수동 빈과 자동 빈이 충돌될 때 로그에 overriding is disabled라고 남습니다.

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 섹션 7. 컴포넌트 스캔 - 중복 등록과 충돌 강의를 실습하던 중 @Component public class MemoryMemberRepository implements MemberRepository{} @Configuration @ComponentScan( excludeFilters = @Filter(type = FilterType.ANNOTATION, classes = Configuration.class) ) public class AutoAppConfig { @Bean(name = "memoryMemberRepository") public MemberRepository memberRepository(){ return new MemoryMemberRepository(); } } 이러한 경우 자료에서는 "수동 빈 등록이 우선권을 가져서 수동빈이 자동빈을 오버라이딩 해버린다." 라고 나와 있습니다. 근데 제 콘솔 로그에는 09:37:26.010 [main] WARN o.s.c.a.AnnotationConfigApplicationContext --Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.support.BeanDefinitionOverrideException: Invalid bean definition with name 'memoryMemberRepository' defined in class path resource [hello/core/AutoAppConfig.class]: Cannot register bean definition [Root bean: class [null]; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=autoAppConfig; factoryMethodName=memberRepository; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [hello/core/AutoAppConfig.class]] for bean 'memoryMemberRepository' since there is already [Generic bean: class [hello.core.member.MemoryMemberRepository]; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in file [/Users/g.u/logInDev/T.I.L/spring/basic/codebase/core/build/classes/java/main/hello/core/member/MemoryMemberRepository.class]] bound. (...생략....) The bean 'memoryMemberRepository', defined in class path resource [hello/core/AutoAppConfig.class], could not be registered. A bean with that name has already been defined in file [/Users/g.u/logInDev/T.I.L/spring/basic/codebase/core/build/classes/java/main/hello/core/member/MemoryMemberRepository.class] and overriding is disabled. Action: Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true 오버라이딩을 원하면 추가 옵션을 세팅하라고 나와있습니다. 이 경우에는 오버라이딩이 된게 아니고 스프링이 중단되었다고 판단됩니다. 혹시 강의에서는 추가로 옵션을 세팅한건 지 아니면 제가 잘못 코드를 작성한건 지 궁금합니다.

  • spring
  • 객체지향
낙낙 댓글 1 좋아요 0 조회수 126

객체 지향 프로그래밍

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.

  • java
  • 객체지향
assure2019 댓글 1 좋아요 0 조회수 130

정적내부클래스 new 로 생성에 관한 질문(인터럽트-시작1강 중...)

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 인터럽트 시작1 부분 강사님 설명 예제중에서 갑자기 궁금해서 질문드립니다.. 제가 궁금한부분은 public class ThreadStopMainV1 { public static void main(String[] args){ MyTask task = new MyTask(); Thread thread = new Thread(task, "work"); thread.start(); } static class MyTask implements Runnable { ...................................... } } 여기서 질문 왜 정적내부클래스 MyTask()에 new를 써서 만드나요?? 정적 내부 클래스는 외부 클래스의 정적 멤버처럼 동작하기 때문에, 외부 클래스의 이름을 통해 접근해야 하는거 아닌가요?. 따라서 new ThreadStopMainV1.MyTask() 형태로 생성해야하는거 아닌가요?? 정적내부클래스도 바로 다이렉트로 new MyTask() 로 생성해도 되는건가요 ?? 너무궁금합니다..

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
댓글 2 좋아요 0 조회수 117

질문은 아니고 강의 내용과 pdf 교안이 다른 점이 있어서 제보드립니다

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

공부 진행에 전혀 문제는 없지만 자그마한 도움이 되고 싶어 말씀드려요 9. 채팅 프로그램.pdf CommandManagerV2 수정 필요한 부분 : public static final String DELIMITER = " | "; 수정 후 : private static final String DELIMITER = " \\| "; CommandManagerV3, CommandManagerV4 수정 필요한 부분 : public static final String DELIMITER = "\\|"; 수정 후 : private static final String DELIMITER = "\\|"; 11. HTTP 서버 만들기.pdf HttpResponse 수정 필요한 부분 : public void setStatus (int statusCode) { this.statusCode = statusCode; } 수정 후 : public void setStatusCode (int statusCode) { this.statusCode = statusCode; } HttpRequestHandlerV4 수정 필요한 부분 : private static void notFound(HttpResponse response) { response. setStatus (404); response.writeBody("<h1>404 페이지를 찾을 수 없습니다.</h1>"); } 수정 후 : private static void notFound(HttpResponse response) { response. setStatusCode (404); response.writeBody("<h1>404 페이지를 찾을 수 없습니다.</h1>"); } pdf 파일에서 setStatus 로 쓰다가 뒤의 커맨드 패턴 NotFoundServlet, InternalErrorServlet 에서는 setStatusCode로 메서드 이름을 사용하고 있어서 강의 내용과 동일하게 setStatusCode로 이름 통일을 시켜봤습니다 ServerMainV5 임포트 추가 import was.v5.servlet.HomeServlet; import was.v5.servlet.SearchServlet; import was.v5.servlet.Site1Servlet; import was.v5.servlet.Site2Servlet;

  • java
  • 네트워크
  • 객체지향
ssshhh 댓글 1 좋아요 1 조회수 176

스프링 빈

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 앞 전 수업까지는 @bean을 메서드에 적어주어서 메서드만 빈으로 등록을 하는건줄 알았습니다. 이번 수업에서는 @Compent를 클래스 적어주어 빈을 등록한다고 하였는데 클래스를 빈으로 등록하는 것과 메서드를 등록하는것은 무슨차이인가요? 클래스를 @Compent를 이용하여 빈으로 등록하면 클래스의 메서드들과 필드 모두 빈으로 등록되는건가요?

  • spring
  • 객체지향
이승호 댓글 1 좋아요 0 조회수 161

순수 가상 클래스 선언과 일반 인트 변수의 선언과 다른가요?

해결됨

C개발자를 위한 최소한의 C++

순수 가상 클래스 강의에서 " virtual int getData() const = 0; " 이 코드는 선언만 있다고 말씀하셨습니다. int a = 0; 이라고 코드를 작성하면 선언 및 정의(초기화)가 된것인데 반해, 함수는 단순히 0을 단순대입했다고 해서 정의가 된것은 아니라는 말씀이신가요? 그렇다면 혹시 " virtual int getData() const; " 만으로 선언이 충분한데 " = 0 " 을하는 이유가 있나요? 단순 초기화 인가요? 또 한가지, 엄밀히 말하면 int a = 0;은 인트 클래스의 인스턴스 a가 선언 및 정의 된거고, 클래스내 함수(메서드)는 인스턴스를 생성하는 건 아니기에 다른건지 궁금합니다. 항상 좋은 강의 감사드립니다!

  • c++
  • microsoft-windows
  • 객체지향
  • 디자인-패턴
배승혁 댓글 2 좋아요 0 조회수 184

안녕하세요 cas 질문이 있습니다.

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강의 잘 듣고 있습니다. cas 강의에서 volatile int와 atomicInteger의 performance 차이를 보니까 atomicInteger가 더 빠른 것을 알 수 있었습니다. 그런데 이건 조금 이해가 잘 안되는게, atomicInteger 자체가 volatile을 내장하고 있는 거라 생각했는데 왜 volatile보다 속도가 빠른 지 이해가 잘 가지 않습니다. volatile은 어떤 락도 안 걸고(그래서 결과가 다르게 나오지만) 가시성만 고려하기 때문에 atomicInteger보다 결과가 좋아야 할 것 같은데 반대의 결과가 나와서 궁금해서 질문드립니다.

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
사차 댓글 1 좋아요 0 조회수 222

11장 연습문제 6번

해결됨

그림으로 배우는 자바, 파트2: 객체지향!

1번 (O) 2번 (O) 3번 - Magician은 해석 가능하지만, knight는 implements 하지 않아서 인터페이스 타입으로 해석이 불가능하다 4번 - knight를 해석해도 Healer와 implements 되어있기 때문에 heal() 호출 가능하다 위와 같은 이유로 1, 2번만 옳은게 맞을까요? 3, 4번이 너무 헷갈려요

  • java
  • 객체지향
julybini 댓글 3 좋아요 0 조회수 203

ServerSocket에 localhost라는 ip정보를 주지 않았는데

해결됨

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] ServerSocket에 localhost라는 ip정보를 주지 않았는데 브라우저에서 http://localhost:12345 접속하면 응답을 받을 수 있는 이유가 뭘까요

  • java
  • 네트워크
  • 객체지향
ssshhh 댓글 1 좋아요 0 조회수 158

안녕하세요. 이동의미론에 대해 제가 잘 이해했는지 궁금합니다.

해결됨

C개발자를 위한 최소한의 C++

testdata는 class명 입니다. 1. testdata t1 = testdata(1);이 예전에는 임시객체를 생성해서 복사 생성을 했었음. 2. 그런데 그게 비용이 비합리적이니까 move sementic이라는게 나왔고 testdata t1 = std::move(testdata(1));을 사용해서 임시객체를 그냥 t1으로 shallow copy시킴. (C++11) 3. 그런데 최근에는 이런 이동의미론 없이 testdata t1 = testdata(1)이라고 써도. 컴파일러가 자동으로 생성자만 호출하는 t1 인스턴스를 생성하는 코드로 평가를 해버림. 제가 잘 이해하고 있는지 궁금합니다 추가 : Test func(Test src): return src; 해당 함수를 실행 시키면, 값을 반환 할 때, 이동 생성자가 호출되는데 반환시는 해당 콜스택이 사라지는 시점이기 때문에 이전까지는 좌측값이였지만, 다음 라인에 사라지게 될 src를 우측값 취급을 해서 임시객체를 생성하는것으로 이해했습니다. 이렇게 해석해도 괜찮을까요?

  • c++
  • microsoft-windows
  • 객체지향
  • 디자인-패턴
sdfjo1565 댓글 1 좋아요 0 조회수 167

테스트 결과창

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 영한님이랑 좀 다르게 나오는데 이유가 뭔가요? Test Result만 보이고 하위로 더 열어도 아무것도 나오지가 않네요.. 그리고 콘솔에 디버그 내용은 왜 나오는 건가요?

  • spring
  • 객체지향
이승호 댓글 2 좋아요 0 조회수 229

출력 오류

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 빈 등록하고 실행했는데 이렇게 뜨는 이유가 뭔가요?

  • spring
  • 객체지향
이승호 댓글 1 좋아요 0 조회수 387

제네릭 상한 설정을 위해 생성자를 활용하는 것이 extends보다 못한 점이 무엇인가요?

미해결

김영한의 실전 자바 - 중급 2편

[질문 내용] 제네릭의 상한 설정을 소개하시기 전에 어떻게 특정 타입만을 받도록 할지 혼자 고민을 해 보았는데, 클래스 생성 시 생성자를 통해 받을 타입을 제한하면 어떨까 생각했습니다. public class Box<T> { private T animal; public Box(Animal animal) { this.animal = (T) animal; } } 결과적으로 문제를 해결하기는 했는데, 이 방법에도 여전히 문제가 있기 때문에 extends를 이용하는 거겠죠? 상기한 방법이 extends를 이용하는 방법보다 못한 점이 무엇인지 궁금합니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
Sangjun Lee 댓글 2 좋아요 0 조회수 202

Cat에 toString 을 오버라이딩 하면...

미해결

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 위와 같이 Cat 클래스에 toString 메서드를 오버라이드 했을때 findAnimal2 의 결과가 Cat()이 나오는게 왜 그런지 모르겠습니다.. 타입 인자가 Animal이고, Cat은 Animal을 상속받은 자식 클래스기 때문에 Cat의 toString 이 나와야 하는거 아닌가요..? 어디서 놓친건지 잘 모르겠습니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
박준일 댓글 1 좋아요 0 조회수 158

javax, jakarta

미해결

스프링 핵심 원리 - 기본편

[질문 내용] 애노테이션 @PostConstruct, @PreDestroy 강의에서 1:07쯤에 김영한 강사님께서 두 @PostConstruct, @PreDestroy 애노테이션을 import하는 과정에서 강사님 화면에서는 import javax.annotation 으로 시작하는 반면에, 제 입장에서는 import jakarta.annotation 로 시작하는데 두 개의 차이점이 무엇인가요?

  • spring
  • 객체지향
soojinkimss 댓글 1 좋아요 1 조회수 609

인기 태그

인프런 TOP Writers

주간 인기글