CodeGym – Java 프로그래밍 학습
프로그래밍을 공부하고 교육을 받는 완전히 새로운 방법은 어떻습니까? 그것은 당신이 전에 본 어떤 것과도 같지 않습니다. 목표, 수단, 결과가 있는 배움은 어떻습니까? Java 학습을 위한 새로운 온라인 프로그래밍 과정을 소개하게 되어 기쁩니다.1 교육은 온라인 게임입니다
작업을 수행하고 실행하고 보상을 받습니다. 나는 그것이 당신에게 분명하고 일반적이라고 생각합니다. 작업은 코드 읽기, 작업 해결, 비디오 레슨, 코드 오류 수정, 새로운 기능 추가, 대규모 작업, 게임 작성 등 매우 다양합니다.2 꼭 필요한 것만
코스가 5 년 동안 지속되지 않도록 유용한 모든 것을 버리고 가장 필요한 것만 남겼습니다. 노동 시장에서 수십 개의 공석을 분석했습니다. 초보자가 Java 주니어 개발자 직업을 얻기 위해 알아야 할 모든 주제가 과정에 포함되어 있습니다.3 나는 당신의 훈련에 철저하게 접근했습니다
전체 과정에는 500개의 미니 강의와 1200(!)개의 실제 작업이 포함되어 있습니다 . 작업은 작지만 많습니다. 그것들이 많이 있습니다. 최소한의 노력만으로도 소중한 경험을 얻을 수 있습니다. 또한 쌍으로 작업, 다양한 게임, 대규모 작업, 실제 프로젝트 및 기타 유형의 연습이 있습니다.4 게임을 끝내고 개발자가 되지 못한다
코스에는 40개의 레벨이 있습니다. 현재 레벨에서 대부분의 작업을 해결한 경우에만 다음 레벨로 이동할 수 있습니다. 작고 쉬운 것으로 시작하여 크고 매우 유용한 것으로 끝납니다. 끝까지 도달한 각 사람은 300~500시간의 실무 경험을 얻게 됩니다. 그리고 이것은 이길 수있는 좋은 기회를 제공합니다. 그리고 일자리를 얻기 위해.5 목표 지향적 면접 준비
마지막 10개 레벨은 이력서 작성, 인터뷰 준비 및 팀워크 기술 습득에 전념합니다. 취업 면접 영상과 그에 대한 분석이 추가될 예정입니다. 음, 확실히 답변이 있는 인터뷰에 대한 일반적인 질문입니다.6 현장에서 직접 작업을 해결할 수 있습니다.
매우 편리하고 효과적입니다. 강의에서 새로운 작업을 방금 분석한 후에는 바로 여기 사이트에서 유추하여 자신의 작업을 만들어야 합니다. IDE에서 작업을 수행하려는 사용자를 위해 두 번의 클릭으로 작업을 수신하고 체크인을 위해 제출할 수 있는 플러그인이 있습니다 . 강의, 예제 분석, 웹 사이트에서 직접 작업 해결, IDE에서 작업 해결 - 이론과 실습 사이의 격차는 그 어느 때보다 얇습니다.7 즉각적인 작업 확인(1초 미만)
확인을 위해 작업을 인계하고 확인하는 사람이 바빠서 결과를 일주일 동안 기다려야 했던 상황을 아시나요? 이것은 대부분의 오프라인 코스의 경우입니다. CodeGym에서 «실행/확인» 버튼을 누른 후 1초 이내에 작업 솔루션의 컴파일 및 확인 결과를 얻을 수 있습니다.8 CodeGym은 공부하는 동안 Facebook을 사용하는 것을 좋아합니다.
Facebook에는 프로젝트 전용 페이지가 있습니다. 여기에서 흥미로운 기술 기사, 동기 부여 이야기, CodeGym 뉴스 및 기타 많은 유용한 정보를 찾을 수 있습니다.9 커버리지
강의에는 다른 강사의 설명을 읽을 수 있는 다양한 웹 사이트에 대한 참조가 많이 있습니다. 내 목표는 당신이 내 말만 듣는 것이 아니라 자료를 이해하는 것입니다.10 개발자가 되려면 두뇌와 컴퓨터만 있으면 됩니다.
연습 시간에 따라 3개월에서 6개월이 소요됩니다.11 지원
의심할 여지 없이 수천 가지 작업에 직면할 때 질문이 생길 것입니다. 작업에 대해 질문할 수 있는 특별 서비스를 마련했습니다. 다른 CodeGym 학생, 중재자, 자원봉사자 및 서비스 창립 멤버가 답변을 드릴 것입니다.12 커뮤니티
우리는 힘이 단결되어 있다고 믿습니다. 따라서 질문을 할 수 있는 커뮤니티를 만들었습니다. 다양한 주제에 대해 토론하고, 기사와 블로그를 공유하세요. 게다가 커뮤니티는 지인을 통해 일자리를 얻을 수 있는 이상적인 장소입니다. 그러므로 현명하게 질문하고 현명한 답변을 제공하십시오. 적극적으로 행동하고 다른 사람을 도울수록 다른 협회 구성원이 자신의 프로젝트에 참여하도록 제안할 가능성이 높아집니다.당신은 새로운 수준에 도달했습니다
2 단계
1 엘리, 모든 것의 기초
- 안녕, 아미고. 오늘 저는 일반적인 Java 프로그램이 어떻게 구성되어 있는지 알려드리고자 합니다 . 요점은 모든 Java 프로그램이 클래스와 객체로 구성된다는 것입니다 . - 수업이 무엇인지 이미 알고 있습니다. 객체란 무엇입니까? - 작은 배를 건조하는 것과 유사하게 먼저 도면을 만든 다음 조선소에 제출해야 합니다. 이 도면을 바탕으로 배가 조립됩니다. 또는 5 척의 배. 사실, 당신이 원하는 만큼. 하나의 도면을 기반으로 수십 척의 동일한 선박이 제작됩니다. 그게 전부입니다! - Java 프로그래밍의 모든 것은 완전히 동일합니다. - 프로그래머는 디자인 엔지니어와 같습니다. 그리고 설계 엔지니어가 도면을 작성해야 한다면 Java 프로그래머는 클래스를 작성해야 합니다. 그런 다음 도면을 기반으로 부품을 만들고 클래스를 기반으로 개체를 만듭니다. - 먼저 클래스를 작성하고(도면 작성) 나중에 프로그램 런타임에 Java Virtual Machine이 이러한 클래스를 사용하여 개체를 생성합니다. 배도 같은 방식으로 만들어집니다. 하나의 그림과 많은 배가 있습니다. 이름이 다르고 다양한 화물을 운반하는 다양한 선박이 있습니다. 그러나 이들은 매우 유사합니다. 모두 동일한 구조를 가지며 동일한 작업을 수행할 수 있습니다. - 선박의 경우 모든 것이 명확합니다. 그것이 무엇인지 정확히 이해하기 위해 몇 가지 더 비교를 해주시겠습니까? - 확신하는. 예를 들어, 꿀벌... - 아니, 잠깐만, 꿀벌은 나에게 나쁜 것을 생각나게 해. 개미집을 더 잘 생각하십시오. - 개미집은 사물 상호작용의 좋은 예입니다. 가장 단순한 개미집에는 여왕개미, 병정개미, 일개미의 세 부류의 개미가 있습니다. 클래스마다 개미의 수에 차이가 있습니다. 여왕은 둥지에 혼자 있습니다. 수십 명의 군인과 수백 마리의 일하는 개미가 있습니다. 따라서 세 개의 클래스와 수백 개의 개체가 있다고 말할 수 있습니다. 개미는 엄격한 규칙에 따라 동일한 개미 및 다른 클래스의 개미와 서로 의사 소통합니다. - 이것은 완벽한 예입니다. 일반적인 프로그램의 경우 모두 동일합니다. 기본 개체는 다른 모든 클래스의 개체를 만듭니다. 개체는 서로 상호 작용하고 프로그램의 "외부 세계"와 상호 작용하기 시작합니다. 개체의 동작은 내부에 하드코딩되어 있습니다. - 잘 이해가 안되네요. 오히려 전혀 이해하지 못한다. - 이 두 가지 설명은 동전의 다른 면과 같습니다. 진실은 그 사이 어딘가에 있습니다. 첫 번째 예(도면과 배송이 포함된 예)는 클래스와 이 클래스의 객체 간의 관계를 보여줍니다. 유사성은 매우 가깝습니다. 두 번째 예(개미집이 있는 예)는 작성된 클래스와 런타임에 존재하는 객체 간의 관계를 보여줍니다. - 먼저 프로그램에 존재하는 모든 개체에 대한 클래스를 작성하고 더 나아가 이들의 상호 작용을 설명해야 한다는 뜻입니까? - 예, 하지만 생각보다 쉽습니다. Java에서는 프로그램 런타임의 모든 것이 객체이며 프로그램을 작성할 때 객체 상호 작용의 다양한 방법을 설명해야 합니다. 객체는 서로의 메서드를 호출하고 필요한 데이터를 전달합니다. - 명확하지는 않지만 거의 명확합니다. - 하지만 호출할 메서드와 메서드에 전달해야 하는 데이터는 무엇인지 어떻게 알 수 있습니까? - 각 클래스에는 클래스가 생성된 대상을 지정하는 설명이 있습니다. 마찬가지로 각 메서드에는 수행하는 작업과 전송해야 하는 데이터에 대한 설명이 있습니다. 클래스를 사용하려면 클래스가 무엇을 하는지 일반적으로 알아야 합니다. 게다가 이 클래스의 각 메서드가 무엇을 하는지 정확히 알아야 합니다. 하지만 그것이 어떻게 이루어지는지 알 필요는 없습니다 . 마술의 하나 일 뿐이야. - 흥. 그렇게 들린다. - 여기, 파일을 복사하는 클래스 코드를 살펴보세요. - 쉽지는 않지만 이미 사진을 얻었습니다. - 괜찮은. 나중에 보자, 악어!2 Risha, 변수 및 기본 유형
- 이봐, 자유 노동. - «안녕, 아미고». 변수의 내부 구조에 대해 알려드리고자 합니다. 각 변수에는 변수가 값을 저장하는 관련 메모리가 있다는 것을 이미 알고 있습니다 . - 응. 지난번에 말씀하셨습니다. - 괜찮은. 당신이 그것을 기억하는 것은 좋은 일입니다. 그럼 계속하겠습니다. - 수업 . 프로그램에서 새 클래스를 설명할 때 이는 데이터가 다른 복합 유형 또는 기본 유형인 새로운 복합 복합 유형을 선언함을 의미합니다. -궁금한 점은 여전히 명확합니다. - 큰(복잡한) 유형은 많은 작은 것(원시적)으로 구성되기 때문에 해당 객체는 많은 메모리를 사용합니다. 일반적인 기본 유형 변수가 수행하는 것 이상입니다. 때로는 훨씬 더. 복잡한 유형의 변수를 할당하는 데 많은 시간이 걸리고 많은 양의 메모리를 복사해야 했습니다. 그렇기 때문에 복합 유형 변수는 객체 자체가 아니라 단순한 객체 참조 (즉, 4바이트 주소)를 저장합니다. 이것은 개체 데이터에 액세스하기에 충분합니다. JVM은 이와 관련된 모든 어려움을 감수합니다. - 이해가 안 돼요. - 변수가 상자와 같다는 것은 이미 논의했습니다. 13을 저장하려면 종이에 숫자를 적고 상자에 넣으면 됩니다. - 이제 조금 더 큰 것을 상자(변수)에 저장해야 한다고 상상해보세요. 예를 들어 개, 자동차 또는 이웃인 조. 단순화하기 위해 쉬운 일을 할 수 있습니다. 개 대신 강아지 사진을, 자동차 대신 자동차 번호판을, Joe 대신 종이에 Joe의 전화 번호를 적습니다. - 이제 종이 한 장을 가져다가 조의 전화번호를 적습니다. 객체 참조와 같습니다. Joe의 번호가 적힌 상자에서 꺼내 복사하여 몇 개의 상자에 넣으면 Joe에 대한 참조가 증가하지만 Joe는 하나만 있을 수 있습니다. - 이러한 데이터 저장의 장점은많은 참조와 하나의 개체만 있을 수 있습니다 . - 그건 흥미 롭군. 그건 그렇고, 거의 이해했습니다. 한 가지 질문만 더 대답하십시오. 복합 유형 변수를 다른 복합 유형 변수에 할당하면 어떻게 됩니까? - 그러면 이 두 변수는 동일한 주소를 포함하게 됩니다. 따라서 하나의 복합형 변수에 저장된 데이터를 변경하면 다른 하나의 데이터도 변경됩니다 . 아시 다시피 변수가 참조를 저장하는 객체는 단 하나 뿐입니다 . 그럼에도 불구하고 개체에 대한 참조를 저장하는 많은 변수가 있을 수 있습니다. - 객체 참조가 없을 때 복합형 변수(참조/클래스형)에는 무엇이 저장되나요? 정말 그런 일이 있을 수 있을까? - 그래, 아미고. 당신은 내 입에서 단어를 가져갔습니다. 그것은 가능하다. 참조(복합) 유형 변수에 개체 참조가 없으면 특수 «null 참조»인 null 을 저장합니다. 실제로는 단순히 개체의 주소를 0으로 저장합니다. 그러나 JVM(Java Virtual Machine)은 주소가 0인 개체를 만들지 않으므로 참조 변수가 0이면 거기에 개체가 없다는 것을 항상 알고 있습니다. 내가 제대로 이해합니까? 변수는 프리미티브와 참조의 두 가지 유형으로 나뉩니다. 기본 유형 변수는 값을 저장하고 참조 유형 변수는 객체 참조를 저장합니다. 기본 유형은 int, char, boolean 등입니다. 나머지는 참조 변수이며 클래스를 사용하여 구성됩니다. - 맞아, 얘야.3 엘리, 어떤 물건이
-여기 당신이 가장 좋아하는 선생님이 또 있습니다. 우리는 빠르게 앞서 나가기 때문에 객체가 무엇이며 어떻게 처리하는지 알려 드리겠습니다. - 어떤 객체를 생성하려면 객체 유형 이름(class)과 그 앞에 키워드 new를 작성해야 합니다 . Cat 클래스가 있다고 가정해 보겠습니다. - 객체를 생성하고 [그 참조]를 변수에 할당하지 않으면 어떻게 됩니까? - 이렇게 하면 JVM(Java Virtual Machine)에서 개체를 생성하고 즉시 쓰레기(사용하지 않는 개체)로 선언합니다. 잠시 후 가비지 수집 중에 해당 개체를 삭제합니다. - 더 이상 필요하지 않은 개체를 어떻게 파괴할 수 있습니까? - 당신은 할 수 없습니다.개체 참조를 저장할 변수가 없는 즉시 해당 개체는 가비지로 표시되고 JVM은 다음 가비지 수집 중에 개체를 파괴합니다. 개체 참조가 하나 이상 있는 한 활성 상태로 간주되며 소멸되지 않습니다. 개체를 신속하게 제거하려면 해당 개체의 모든 참조를 null로 설정합니다. 즉, 해당 개체를 참조하는 모든 변수에 null 값을 할당합니다. - 알았어요. 이전 강의 이후로 전혀 어렵지 않은 것 같습니다. - 좋아요, 그럼 여기 당신의 기술을 향상시키기 위한 몇 가지 작업이 있습니다. System.out에도 있습니다. 그러나 나중에 더 어려운 일이 있을 것입니다. 그리고 당신이 만든 강철을 우리에게 보여줄 수 있습니다.작업 | |
---|---|
1 | 다음을 표시하는 프로그램을 작성하십시오. «단계별로 작업이 완료됩니다.». |
2 | 7번 표시되는 프로그램을 작성하세요: «불가능한 일을 하는 것은 일종의 재미입니다.». |
삼 | 다음을 표시하는 프로그램을 작성하십시오. «항상 유용한 것을 배우고자 합니다.». |
4 Risha, 변수의 가시성.
- 안녕, 내가 제일 좋아하는 학생. 이제 변수의 가시성 에 대해 말씀드리겠습니다 . - 왜 보이지 않는 변수도 있는 걸까요? - 아니요, 변수는 해당 변수에 액세스할 수 있는 코드 위치에서 볼 수 있습니다. 일부 변수는 프로그램의 어디에서나 액세스할 수 있고 다른 변수는 해당 클래스 내에서만 액세스할 수 있으며 일부 변수는 한 메서드 내에서만 액세스할 수 있습니다. - 예를 들어 변수가 선언되기 전에는 참조할 수 없습니다. - 알았습니다. - 다음은 몇 가지 예입니다. 1 메서드에서 선언된 변수가 존재/ 선언 시작부터 메서드 끝까지 표시됩니다. 2 코드 블록에서 선언된 변수는 이 코드 블록의 끝까지 존재합니다. 3 변수 - 메서드 인수 - 메서드 범위 내 어디에나 존재합니다. 4개의 클래스/객체 변수는 객체의 전체 수명 동안 존재합니다. 특수 액세스 수정자 public 및 private은 가시성을 추가로 제어합니다. 5 정적 클래스 변수는 프로그램 런타임에 존재합니다. 액세스 수정자는 가시성도 결정합니다. - 나는 사진을 좋아하고 모든 것이 제자리에 있습니다. - 잘했어, 아미고. 항상 당신이 똑똑한 친구라는 것을 알고 있습니다. - 액세스 수정자 에 대해서도 알려드리겠습니다 . 너무 두려워하지 마세요. 로켓 과학이 아닙니다. 이것은 당신이 보는 공개 및 비공개 라는 단어입니다 . -나는 두렵지 않습니다. 여기는 추울뿐입니다. - 그래. 다른 클래스에서 클래스의 메서드 및 변수에 대한 액세스(가시성)를 제어할 수 있습니다. 각 메소드 또는 변수에 대해 하나의 액세스 수정자만 지정할 수 있습니다. 1 수정자 public 수정자 public으로 플래그가 지정된 변수, 메서드 또는 클래스는 프로그램의 어디에서나 액세스할 수 있습니다. 제한이 없는 최고 수준의 개방성입니다. 2 한정자 private 한정자 private로 플래그가 지정된 변수 또는 메서드는 그것이 선언된 클래스에서만 액세스할 수 있습니다. 다른 모든 클래스의 경우 플래그가 지정된 메서드나 변수는 마치 존재하지 않는 것처럼 보이지 않습니다. 이것은 가장 높은 수준의 폐쇄성입니다(동일한 클래스에서만 볼 수 있음). 3 수정자 기본값 수정자가 변수 또는 메서드에 플래그를 지정하지 않으면 수정자 기본값으로 간주됩니다. 해당 한정자가 있는(즉, 전혀 없는) 변수 또는 메서드는 선언된 패키지의 모든 클래스에서 볼 수 있습니다. 동일한 패키지에서만 가능합니다. 이 수정자는 때때로 패키지 라고 불리며 해당 클래스가 설명 탭에 속하는 전체 패키지에 대해 변수 및 메소드에 대한 액세스가 가능함을 의미합니다.5 디에고, 변수를 생성하는 작업
- 이봐, 친구. 필요한 경우 계약서 사본을 보관합니다. 그 교활한 싸구려 Risha는 행복하게 알지 못합니다. 내 계약서의 금액을 보셨어야 합니다. 허, 허. - 잘했어, 디에고. 정말 유용한 것들을 가르쳐 주신 것 같아요. - 그래, 아미고. 고통없는 성취는 없다. 그러나 여전히 누군가는 얻는 것 없이 고통을 겪는다. - 손을 돌려 공부하자. 이제 다양한 방법으로 여러 변수를 생성하는 방법을 보여드리겠습니다. - 와우, 디에고! 당신은 정말 똑똑합니다. -허허! 고마워, 아미고. - 당신은 이미 내 일을 놓친 것 같아요. 그래서 여기에 그들 중 일부가 있습니다. 그 인간들, 외계인들은 우리의 로봇 생활에 대해 아무것도 모릅니다. 나 말고 누가 그걸 가르쳐줄까?작업 | |
---|---|
1 | 3번 표시하는 프로그램을 작성하세요: «많은 사람들이 그들을 쏘는 것이 불법이기 때문에 살아있습니다.» |
2 | 다음을 표시하는 프로그램을 작성하십시오. «당신의 의견이 필요하면 필요한 양식을 작성하도록 요청하겠습니다.». |
삼 | 20번 표시하는 프로그램을 작성하세요. |
6 Elly, 참조로 전달. 참조 변수
- 헤이, 아미고, 또 나야, 엘리. 항상 이런 말을 해서 미안하지만, 31세기에 지구상에서 일어나는 일들이 바로 그런 방식입니다. 참조 변수의 기능과 참조 인수를 함수(메소드)에 전달하는 방법에 대해 설명하겠습니다. - 준비됐어. - 그럼, 참조 변수는 기본 변수를 제외한 모든 유형의 변수입니다. 이러한 변수에는 개체(개체 참조)의 주소만 포함됩니다. - 기본 유형의 변수는 값과 유형을 저장하고 클래스 변수는 동일한 클래스, 웰 또는 null의 객체에 대한 참조를 저장합니다. 내가 맞습니까? - 전적으로. - 그래서 레퍼런스가 뭔데? - 개체와 해당 참조는 연결되어 있습니다. 예를 들어 사람과 전화 번호처럼 연결되어 있습니다. 전화번호는 남자가 아니지만 남자에게 전화를 걸어 무언가를 요구하거나 안내하거나 명령하는 데 사용할 수 있습니다. 참조는 개체와 상호 작용하는 데에도 사용됩니다. 모든 개체는 참조를 통해 서로 상호 작용합니다. - 사람들이 전화로 서로 소통하는 것처럼? - 좋아요. 기본 개체를 할당하면 해당 값이 복사(중복)됩니다. 참조 변수를 할당하면 개체 자체가 아닌 개체 주소(전화 번호)만 복사됩니다. - 네, 알겠습니다. - 참조는 또 다른 이점을 제공합니다. 개체 참조를 모든 메서드에 전달할 수 있으며 이 메서드는 해당 메서드를 호출하고 개체 내의 데이터에 액세스하여 참조를 사용하여 개체를 수정(변경)할 수 있습니다. - 변수 a와 b 의 값은 스왑 방식 내에서 교환됩니다 . swap 메서드를 호출하면 변수 a & b 는 m & n 값의 복사본을 받습니다 . 따라서 변수 m & n 의 값은 a & b 의 값을 변경해도 동일하게 유지됩니다 . 오른쪽 열의 코드에서 명확하게 볼 수 있습니다. -솔직히 말해서 나는 아무것도 얻지 못했습니다. 몇 가지 예를 더 들어도 될까요? - 참조 유형의 경우 이렇게 할 수 있습니다. - 변수 a와 b에는 각각 emma와 alice에 대한 참조가 할당되고 a와 b 값은 개체 emma와 alice 내에서 변경됩니다. - 그럼 다른 클래스 안에서도 클래스를 선언할 수 있나요? 우와! -나머지는 명확하지 않습니다. - 동시에는 아닙니다.7 Elly, 함수 호출, 반환 값
- 그럼 돌아갑시다. 메서드 호출이 어떻게 작동하는지에 대해 이야기하고 이전 강의를 다시 살펴보십시오. - 거래! - 그럼, 함수/메서드 호출과 리턴 값에 대해 말씀드리겠습니다. - 명령은 기능으로 그룹화되어 하나의 복잡한 명령으로 단일 블록에서 실행할 수 있습니다. 이렇게 하려면 함수(메소드)의 이름을 작성한 다음 이름 뒤의 괄호 안에 값과 매개변수를 지정해야 합니다. - 위 예제에서는 전달된 문자열을 4번 출력하는 함수를 작성했습니다. 그런 다음 6행에서 함수 print4를 호출했습니다. - 6행을 실행하면 프로그램이 9행으로 이동하고 s 변수에 "I like to move it, move it"이라는 값이 할당됩니다. - 그러면 11-14행이 실행되고 마지막으로 기능이 완료되고 프로그램이 7행에서 계속됩니다. - 잡았다. - 함수에 인수(매개변수)를 전달할 수 있을 뿐만 아니라 함수의 연산 결과(값)도 반환할 수 있습니다. 이는 키워드 return을 사용하여 수행됩니다. 다음과 같이 표시됩니다. - 제가 파악하고 있는 것 같습니다. 왼쪽과 오른쪽에 같은 코드입니다. 왼쪽에는 별도의 기능으로 표시됩니다. - 이 함수는 값을 계산하고 return 명령을 사용하여 호출한 사람에게 전달합니다. 적어도 나는 그렇게 생각한다. - 기본적으로 사실입니다. - 그리고 void 유형은 무엇입니까? - 일부 함수는 무언가를 수행하지만 main 메서드와 같이 값을 계산하거나 반환하지 않습니다.(). 이러한 함수의 경우 특수한 결과 유형인 void (빈 유형) 가 생성되었습니다 . - 함수가 아무 것도 반환하지 않는데 왜 우리는 아무 것도 지정할 수 없습니까? - 모든 변수가 어떻게 선언되는지 생각해 보십시오: 타입과 이름. 함수는 유형, 이름 및 괄호로 선언됩니다. 괄호 뒤에 오는 함수 이름은 함수 호출입니다! - 그래서 함수를 값을 반환하는 것과 반환하지 않는 것의 두 범주로 나누는 것보다 "빈 유형"을 생각하는 것이 더 쉬웠습니까? - 정확히! 당신은 생각이 빠르군요. - 어떻게 빈 유형을 반환할 수 있습니까? - 당신은 할 수 없습니다. 작동 방식은 다음과 같습니다. JVM이 반환 을 실행할 때명령을 사용하면 return이라는 단어 오른쪽에 있는 표현식의 값을 계산하고 해당 값을 특수 메모리 영역에 저장하고 즉시 함수를 종료합니다 . 함수가 호출된 곳에서 함수 호출의 결과로 저장된 값을 사용합니다. 위의 예에서 볼 수 있습니다. - int m = min(a,b)가 m = m2 로 변환된 곳을 의미합니까 ? - 예. 함수 호출 후 함수 대신 결과가 같은 위치에 기록되는 것처럼 모든 것이 계속 작동합니다. 해당 문장을 다시 한 번 읽고 마지막 예제의 코드를 살펴보십시오. - 보기에는 쉬워도 실제로는 어렵다. 나는 조금 얻었습니다. 그게 다입니다. - 괜찮아요.첫 번째 시도에서는 이미 알고 있는 것만 이해할 수 있습니다. 새로운 영역에 들어갈수록 더 불분명해집니다. 그리고 그 결과는 훨씬 더 굉장할 것입니다. 시간이 지날수록 모든 것이 명확해진다. - 그렇다면 계속 갑시다.8 디에고
- 안녕, 아미고. 다음은 몇 가지 작업입니다. 이제 System.out 이상의 작업을 수행할 수 있습니다. 최선을 다해! 나는 당신을 믿습니다!작업 | |
---|---|
1 | 최소 두 개의 숫자 최소 두 개의 숫자를 반환하는 함수를 작성하세요. |
2 | 최대 2개의 숫자 최대 2개의 숫자를 반환하는 함수를 작성하세요. |
삼 | 최소 3개의 숫자 최소 3개의 숫자를 반환하는 함수를 작성하세요. |
4 | 최소 4개의 숫자 최소 4개의 숫자를 반환하는 함수를 작성하세요. 함수 min(a,b,c,d)는 함수 min(a, b)를 사용(호출)해야 합니다. |
5 | 문자열 복제 전달된 문자열을 3번 출력하는 함수를 작성하세요. 각 문자열은 새 줄에 있어야 합니다. |
6 | 텍스트 표시 전달된 문자열(단어)을 한 줄에 세 번 표시하는 함수를 작성하세요. 단어는 공백으로 구분해야 하며 하나로 병합할 필요가 없습니다. |
GO TO FULL VERSION