CodeGym /Java Blog /무작위의 /올드 레벨 05
John Squirrels
레벨 41
San Francisco

올드 레벨 05

무작위의 그룹에 게시되었습니다

소프트웨어 개발자가 될 수 있습니까?

이전 레벨 05 - 1해양 원칙은 다음과 같이 명시합니다. 신체적으로 적합한 남성 또는 여성을 찾으면 올바른 훈련과 교육을 제공하여 그를 독특한 전사로 만들 수 있습니다. 프로그래밍은 기타 연주, 수영 또는 자전거 타기와 같은 기술입니다. 사람들은 타고난 바이커가 아닙니다. 나보다 두 배는 열심히 일하고 네 배 적은 돈을 받는 친구들을 보면 다음과 같은 대화를 시작합니다. — 프로그래머로 일하고 싶습니까? 당신은 정말 똑똑합니다. 아마도 당신은 단순히 당신의 자리에 있지 않습니까?

왜 소프트웨어 개발인가?

사람에게 프로그래밍을 가르치기 전에 우리는 그것이 그 사람에게 무엇을 주는지 알아내는 것이 좋습니다.

1 간단하고 흥미로운 직업.

소프트웨어 엔지니어는 간단하고 흥미로운 직업입니다. 창의력을 발휘할 수 있는 좋은 공간이 있습니다. 나는 그것을 좋아한다. 처음에는 내가 좋아하는 일을 하고 돈을 받는다는 생각에 미쳤다. 하지만 결국 익숙해졌습니다.

2 보수가 좋습니다.

나는 단지 5년 동안 일하면서 친구들이 자동차와 집을 스스로 사는 것을 보는 것을 즐깁니다.

3 유연한 시간.

엄격한 작업 일정은 불쾌한 일입니다. 출퇴근 시간에 교통 체증을 겪거나 5분 지각으로 벌금을 물은 적이 있는 사람이라면 누구나 이를 확인할 수 있습니다. 오전 11시에 출근해서 오후 5시에 퇴근할 수 있다면 어떨까요? 대부분의 프로그래머에게는 일반적인 일정입니다. 당신의 일을하고 아무도 크로스 워드를 말하지 않을 것입니다. 대부분의 회사에서 집에서 일할 수도 있습니다. 귀하는 항상 고용주와 합당한 합의에 도달할 수 있습니다.

4 전문적인 성장.

대부분의 회사에서 좋은 급여를 받으려면 경력 사다리를 올라야 합니다. 소프트웨어 개발자는 소프트웨어 개발자여야 합니다. 개발자에서 관리자로 다시 자격을 갖추거나 선두 자리를 차지하려고 하지 않아도 됩니다. 전문적으로 성장하기만 하면 됩니다. 5~10년 경력의 개발자는 로열티를 받습니다.

5 높은 국제 이동성.

세계에서 가장 보수가 높은 세 가지 직업이 있습니다: 변호사, 의사, 소프트웨어 개발자. 다른 법률, 판례법 등 해외에서 일하는 변호사에게는 정말 어려운 일입니다. 의사는 언어, 기타 의료 기준을 배우고 시험에 합격해야 합니다. 개발자는 추가로 배울 필요가 없습니다. 같은 언어. 동일한 기준. 대부분의 경우 클라이언트도 동일합니다.

왜 자바인가?

다음 세 가지 요인으로 인해 Java 개발자를 위해 사람들을 재교육하게 되었습니다.

1. Java — 배우기 가장 쉬운 언어 중 하나입니다.

학교를 막 졸업한 사람은 기본 지식과 학습 시간에 따라 3~6개월 안에 배울 수 있습니다.

2. 노동 시장에 대한 높은 수요.

경력 없이도 취업이 가능합니다. 기업은 인턴을 열심히 채용하고 계속 교육합니다.

3. 해당 분야 최고 연봉.

가장 높은 것 중 하나입니다. 이는 주니어 개발자에게 특히 중요합니다.  

프로그래밍은 기술이다

이전 레벨 05 - 2책을 읽고 컴퓨터 프로그래머가 될 수는 없습니다. 최소 500시간의 연습이 필요합니다. 권투처럼. 단순히 경기를 보고 프로가 될 수는 없습니다. 몇 년 동안 훈련해야 합니다. (그래서 CodeGym에는 많은 실용적인 작업이 있습니다). 10시간 안에 프로그래밍하는 방법을 가르쳐준다는 모든 제안은 10시간 안에 복싱을 가르쳐준다는 제안과 동일합니다. 그런 다음 권투 링에 던져! 하지마. 때때로 초보자가 포럼에서 소프트웨어 개발자가 되는 방법을 물으면 그는 스스로 작업을 발명하고 수행하라는 지시를 받습니다. 작동하지 않습니다.문제는 사람이 자신의 지식을 넘어서는 작업을 수행할 수 없다는 것입니다. 당신은 무언가를 알고 있거나 모르거나 둘 중 하나입니다. 주제에 정통한 사람만이 당신을 위해 일련의 작업 세트를 만들 수 있으며, 각각의 작업은 당신에게 새로운 것을 가르쳐 주고 해결하는 데 몇 주가 걸리지 않을 것입니다. 이것이 제가 CodeGym에서 한 일입니다.

새로운 혁신적인 교수법

코드짐 교육은 대학 교육과는 다른 방식으로 이루어집니다. 곧 알게 될 것입니다. 훨씬 더 효과적입니다. 대학에서의 공부는 아마도 이랬을 것입니다. 긴 강의와 배운 내용을 정리하기 위한 연습. 이 접근 방식을 따르면 기술이 아닌 지식이 향상됩니다. 솔직히 말해서, 이런 식으로 습득한 기술은 거의 가치가 없습니다. 다른 접근 방식이 있습니다. 사람은 먼저 질문을 하고 나서야 답을 얻어야 한다고 생각합니다. 질문 앞의 대답은 가치가 없습니다. 제 강의는 여러분의 질문에 대한 답변입니다. 따라서 먼저 현재 지식으로 해결하기 어려운 실용적인 작업을 제공합니다. 이러한 작업은 질문을 제기하고 지식과 강의라는 내 답변을 받습니다. 나는 세 단계로 당신에게 새로운 지식을 제시합니다.
  1. 입문 (최소한의 이론과 몇 가지 실습)

  2. 주요 블록 지식 (주제를 완전히 이해해야 함)

  3. 세부 사항 및 뉘앙스 (여기서 공백을 채움)

이렇게 하면 하나의 동일한 주제를 적어도 세 번 접하게 될 것입니다. 그리고 모든 것이 크게 상호 연관되어 있으며, 적어도 부분적으로나마 이전 주제를 설명하지 않고 하나의 주제를 완전히 설명하는 것은 단순히 불가능하다는 것을 언급할 가치조차 없습니다. 어떤 학생들은 어떤 과제가 너무 어렵다고 아직 공부하지 않았다며 분개하기도 합니다. 이러한 작업은 생각을 잠시 멈추게 합니다. 현재 지식 수준을 사용하여 어떻게 해결합니까? 이러한 작업을 해결하는 데 한두 시간을 할애할 수 있지만 나중에는 새롭고 독창적인 접근 방식이나 우아한 솔루션을 찾게 되어 매우 기쁠 것입니다. 사실, 실생활에서 처음에는 직장에서 과제가 주어지고 나중에야 그 문제를 해결하는 방법을 알게 될 것입니다. 그게 현실이야, 얘들아. 따라서 이러한 접근 방식에 빨리 익숙해질수록 좋습니다.

레벨 5

이전 레벨 05 - 3

1 Elly가 수업에 대해 이야기합니다.

- 이봐, 아미고! - 안녕, 엘리! - 오늘은 수업이 무엇인지 설명하고 싶습니다. - 설명 # 1. 비유부터 시작하겠습니다. 우리 우주의 모든 것은 원자로 이루어져 있습니다. 수소, 산소, 철, 우라늄 등 다양한 유형일 수 있습니다. 원자를 결합하면 다양한 사물이나 물체를 만들 수 있습니다. - 자바 세계도 마찬가지입니다. 여기서 프로그램은 Integer, String, File, Object 등 다양한 유형의 개체로 구성됩니다. 개체를 결합하면 다양한 웹 서비스 또는 프로그램을 만들 수 있습니다. - 다른 원자는 다른 내부 구조를 가지고 있습니다. 그들은 많은 전자, 양성자 및 중성자를 포함합니다. - 서로 다른 클래스(Java의 객체 유형)도 서로 다른 내부 구조를 가집니다. 그들은 다양한 변수와 방법을 포함합니다. - 네, 원자 구조에 대한 일반적인 생각이 있습니다. 난 로봇이야, 그렇지? - 프로그램을 전체적으로 살펴봅시다. 개체는 프로그램을 구성하는 빌딩 블록과 같습니다. 클래스는 이러한 블록의 유형입니다. 다른 유형의 블록은 다른 클래스의 개체입니다. - 알겠어. - 설명 # 2. 새로운 유형의 객체가 필요할 때 새로운 클래스를 생성합니다. 이 클래스 내에서 객체의 원하는 동작을 설명합니다. - 글쎄요, 뭔가 이해하긴 했지만 잘 모르겠습니다. - 클래스는 내부 구조를 고려할 때 무언가를 하는 클래스 메서드와 공유 데이터를 저장하는 클래스 변수로 구성된다. - 간단히 말해서 클래스는 메서드 집합입니까? - 좀 더 구체적으로 말하자면, 클래스는 함께 작동하는 메서드 그룹과 메서드가 공유할 다른 값을 저장하는 변수입니다. - 응. 새 클래스를 만들려면 이러한 메서드를 작성해야 합니다... - 네. 또한 어떤 변수가 서로 다른 메서드에서 공유되는지 결정한 다음 메서드에서 클래스로 변수를 가져와야 합니다. 즉, 메서드 변수를 클래스 변수로 바꿉니다. - 클래스는 다음 패턴으로 생성됩니다. 1 프로그래머가 필요한 다른 개체를 결정합니다. 2 프로그래머는 이러한 개체를 수행하는 작업에 따라 다른 유형으로 나눕니다. 3 프로그래머는 각 유형에 대해 별도의 클래스를 작성합니다. 4 수업에서 그는 필요한 메소드와 변수를 선언합니다. 5메서드가 프로그래머가 원하는 작업을 수행하도록 각 메서드에 명령을 작성해야 합니다. 6 클래스가 준비되었습니다. 이제 객체를 생성할 수 있습니다. - 엄청난! 흥미로운 계획입니다. 나는 그것을 기억할 것이다. - 암기해야 유용합니다. 프로그램을 객체로 나누는 프로그래밍 방식을 객체 지향 프로그래밍 ( OOP )이라고 합니다. - Java는 OOP 접근 방식의 전형적인 예입니다. Java에서는 모든 것이 객체이기 때문입니다. - 자바 학습은 크게 자신의 클래스 작성 학습타인의 클래스 활용 학습의 두 가지 주요 작업으로 구성됩니다.. 오늘 우리는 가장 쉬운 것부터 시작합니다. 간단한 클래스를 작성하는 방법과 해당 개체를 만드는 방법을 배웁니다. 개체는 종종 클래스의 인스턴스라고 합니다. 이들은 동의어이며 어느 쪽이든 맞습니다. - 알았어요. - 요약하면 클래스는 미니 프로그램이라고 말할 수 있습니다. 이 데이터로 작업을 수행하는 데이터 및 함수 집합입니다. 클래스의 중요한 기능은 이러한 클래스(개체)의 인스턴스를 만드는 기능입니다. - 클래스 객체를 생성하려면 «new class_name()» 코드를 작성해야 합니다 . 이전 레벨 05 - 4- 클래스 개체에는 두 가지 흥미로운 기능이 있습니다. - 첫째. 각 클래스 개체는 클래스 변수의 자체 복사본을 저장합니다.따라서 클래스에 변수 x, y가 선언되고 이 클래스의 객체 10개가 생성되면 객체마다 고유한 변수가 있습니다. 객체의 변수를 변경해도 다른 객체의 변수에는 영향을 미치지 않습니다. - 두 번째. 새 개체를 만들 때 다양한 매개 변수를 전달할 수 있습니다. 이것은 소위 «시작 값»입니다. 마치 태어날 때 이름을 지어주는 것과 같습니다. 이러한 매개 변수를 전달하지 않고는 많은 개체를 만들 수 없습니다. - 조금 이해하겠다. 그리고 클래스 변수에 대해 뭐라고 하셨습니까? - 모든 개체에는 데이터(클래스 변수)의 복사본이 있습니다. 이전 레벨 05 - 5

2 Risha는 패키지에 대해 이야기합니다.

- 이봐, 아미고! 이제 패키지에 대해 말씀 드리겠습니다. - 컴퓨터의 파일은 폴더로 그룹화됩니다. Java의 클래스(각 클래스는 별도의 파일에 있음)는 디스크의 폴더인 패키지로 그룹화됩니다. 이것은 새로운 것이 아닙니다. 그러나 두 가지 언급이 있습니다. - 먼저 «고유한 전체 클래스 이름»은 «패키지 이름» + «클래스 이름» 입니다 . 예: 이전 레벨 05 - 6- 전체 클래스 이름은 항상 고유합니다! - 매번 java.util.ArrayList 와 같이 긴 이름을 쓰는 것은 매우 어렵습니다 . 따라서 코드에서 다른 클래스의 짧은 이름을 사용할 수 있습니다. 하지만 그러기 위해서는 약간의 마법을 사용해야 합니다. - 무슨 마법? - «import java.util.ArrayList;» 문을 사용할 수 있습니다. - 클래스 시작 부분에서 패키지가 선언된 직후 코드에 사용된 ArrayList 클래스의 전체 이름을 지정해야 합니다. 코드에서 java.util.ArrayList, sun.generic.ArrayList 및 com.oracle.ArrayList 클래스를 사용한다고 가정해 보겠습니다. 가져오기에서 이들 중 하나를 지정하고(예: sun.generic.ArrayList;) 짧은 이름을 사용할 수 있습니다. 하나의 클래스만 고려합니다. - 이게 왜 이렇게 복잡해? 동일한 이름을 가진 클래스가 있을 수 있습니까? - 예, 다른 패키지에는 같은 이름의 클래스가 있을 수 있습니다. 하지만 이름이 같은 두 개의 클래스를 우리 클래스로 가져올 수는 없습니다., 그래서 우리는 그들 중 하나에 전체 이름을 적용해야 합니다. - 또 다른 비유가 있습니다. 팀에 Bill이 있고 모든 사람이 Bill이 누구인지 알고 있기 때문에 의사 소통에 문제가 없습니다. 그러나 Bills가 3개 있는 경우 각각의 고유한 전체 이름을 사용하여 구분해야 합니다. - 둘째 , src 루트 폴더 가 아닌 패키지에 클래스를 넣는 것이 좋습니다 . 클래스가 적을 때는 문제가 없지만 클래스가 많으면 혼란스러워지기 쉽습니다. 따라서 항상 패키지에서만 클래스를 생성하십시오. Java의 규칙은 클래스 및 패키지에 자체 설명 이름을 지정하는 것입니다. 많은 회사에서 라이브러리(클래스 세트)를 생성하고 혼동을 피하기 위해 회사/웹 사이트 뒤에 이러한 클래스의 이름 팩을 지정합니다. 이전 레벨 05 - 7

3 김 쇼 비디오 자습서

- 이봐, 아미고! 다음은 클래스 및 패키지를 만드는 방법에 대한 몇 가지 비디오 자습서입니다.
- 이미 해냈어! - 당신은 당신의 로봇 생활에서 수천 번 그것을 할 것입니다. 그러니 익숙해지세요. 그리고 지금, 당신은 연습해야합니다! Java 클래스 생성 패키지 생성

4 Elly, 객체 생성, 객체 참조

- 그래서 우리는 지난 시간에 수업을 배웠습니다. 오늘은 객체를 생성하는 방법을 알려드리려고 합니다. 매우 간단합니다. new 키워드 와 생성하려는 객체의 클래스 이름을 작성합니다. 이전 레벨 05 - 8- 하지만 이전에 들어본 적이 있습니다. - 알지만 들어주세요. - 새로운 객체 생성 시 중괄호 안에 다양한 파라미터를 전달할 수 있습니다. 오늘은 잠시 후에 설명하겠습니다. Cat 클래스를 살펴보겠습니다. - 이 게터세터는이전 레벨 05 - 9 무엇입니까 ? - 다른 클래스에서 액세스할 수 없는 변수는 Java에서 일반적인 관행입니다. 일반적으로 클래스 내에서 선언된 변수에는 private 한정자가 있습니다 . - 개인 변수에 대한 액세스 권한을 부여하려면 다음과 같은 두 가지 메서드를 생성해야 합니다.그리고 . _ get 메서드의 목표는 변수의 현재 값을 호출한 사람에게 반환하는 것입니다. 메서드 집합의 목표는 새 값을 설정하는 것입니다. - 요점이 뭐야? - 다른 사람이 개체 변수의 값을 변경하지 못하게 하려면 set 메서드를 작성하지 않거나 private 로 만들 수 있습니다 . 이 방법에 추가 데이터 확인을 추가할 수도 있습니다. 새로 전달된 값이 유효하지 않으면 아무 것도 변경하지 마십시오. - 그 흥미 롭군요. - 클래스에 변수가 많을 수 있기 때문에 메소드의 이름은 get , set일반적으로 작업하는 변수의 이름을 포함합니다. - 변수 이름이 fullName 인 경우 메서드 이름은 getFullNamesetFullName 이어야 합니다 . 등등과 비슷합니다. - 알았어요! 전반적으로 이해할 수 있는 접근 방식입니다. - 다음은 새로 생성된 개체로 작업하는 방법에 대한 몇 가지 예입니다. 이전 레벨 05 - 10

5 디에고, 자체 클래스 및 객체 생성 작업

- 이봐, 아미고! 다음은 클래스와 개체를 만드는 몇 가지 작업입니다.
작업
1 Cat 클래스 만들기
Cat 클래스를 만듭니다. 고양이는 이름(name, String), 나이(age, int), 체중(weight, int), 힘(strength, int)이 있어야 합니다.
2 구현 방법 싸움
구현 방법 부울 싸움(Cat anotherCat): 고양이의 체중, 나이 및 강도에 따라 싸움 메커니즘을 구현합니다. 스스로 의존성을 만드십시오. 메서드는 현재 고양이(싸움 메서드가 호출된 개체) 또는 anotherCat이 싸움에서 이겼는지 여부를 결정해야 합니다. 즉, 현재 고양이가 이겼으면 true를 반환하고 이기지 않았다면 false를 반환합니다. 다음 조건이 충족되어야 합니다.

if cat1.fight(cat2) == true, then cat2.fight(cat1) == false
Dog 클래스의 Getter 및 Setter <
클래스 Dog를 만듭니다. 개는 이름(String name)과 나이(age) - int age를 가져야 합니다.
Dog 클래스의 모든 변수에 대한 getter 및 setter를 만듭니다.
4 Cat 유형의 객체 3개
생성 main 메서드에서 Cat 유형의 객체 3개를 생성하고 데이터로 채웁니다.
첫 번째 작업의 Cat 클래스를 사용합니다. Cat 클래스를 만들지 마십시오.
5 고양이들 사이에서 3개의 투썸 싸움을 개최합니다.
Cat 클래스를 사용하여 3마리의 고양이를 생성합니다.
고양이 사이에 세 쌍의 싸움을 개최하십시오.
Cat 클래스를 만들지 마십시오. 싸움에는 부울 싸움(Cat anotherCat) 메서드를 사용합니다.
각 전투의 결과를 표시합니다.

6 Risha는 개체 초기화에 대해 이야기합니다.

- 객체 초기화에 대해 말씀드리고 싶습니다. 객체가 생성되면 변수에 시작 데이터를 할당해야 객체에 액세스하려고 할 때 제대로 작동하는 데 필요한 데이터가 없는 상황을 방지할 수 있습니다. - 파일 유형의 객체를 생각해 봅시다. 파일에 필요한 최소한의 정보는 이름입니다. 이름이 없는 파일은 넌센스입니다. - 파일 작업을 위해 자체 버전의 File 클래스(예: MyFileClass)를 작성한다고 가정합니다. 이 클래스의 각 개체에 필요한 정보는 무엇입니까? - 이 객체가 작업할 파일의 이름은? - 좋아요. 그래서 클래스에 initialize() 메서드를 추가합니다. 다음과 같이 표시됩니다. 이전 레벨 05 - 11- 방법을 추가했습니다.초기화 , 개체로 작업할 수 있으려면 해당 메서드를 호출합니다. 초기화 메소드가 호출된 직후에 이 작업을 수행할 수 있습니다. 객체로 작업할 수 없으면 무효 라고 하고 그렇지 않으면 유효 라고 합니다 . 메서드 초기화의 주요 목적은 개체를 유효하게 만들기 위해 필요한 모든 데이터를 개체에 전달하는 것입니다. - 알았어요! -이제 작업을 복잡하게합시다. 또는 오히려 단순화하십시오. 당신이 그것을 보는 방법에 따라. 우리 클래스를 사용할 다른 프로그래머를 위해 전체 파일 이름이 아닌 디렉토리와 짧은 파일 이름을 전달하는 것이 더 쉽다고 상상해 보십시오. 우리는 다른 메서드 초기화를 사용하여 이 기능을 구현할 수 있습니다 ( Java를 사용하면 동일한 이름을 가진 여러 메서드를 만들 수 있습니다.). 그러면 우리 클래스는 다음과 같을 것입니다. 이전 레벨 05 - 12- 게다가 현재 파일 옆에 임시 파일 복사본을 만들어야 하는 경우가 종종 있습니다. - 이 경우에 대한 방법을 만들 수 있습니까? - 그럼요, 이것 좀 보세요: 이전 레벨 05 - 13- 그래서 제가 원하는 만큼 이 방법을 만들 수 있나요? - 물론 이유가 있습니다. 그러나 실제로는 원하는 만큼 사용할 수 있습니다. - 초기화 메소드는 언제 호출해야 하는가? - 개체가 생성된 직후 유효한 개체로 전환하려면 다음을 수행합니다. 이전 레벨 05 - 14- getFolder() 메서드는 무엇입니까? - 이름에서 알 수 있듯이 이 메서드는 파일이 있는 폴더의 이름을 포함하는 문자열을 반환합니다. 그러나 우리는 여기에 구현을 작성하지 않았습니다. 단지 보여주기 위한 것입니다.

7 Diego, 개체 초기화 작업

- 이봐, 아미고! 나는 우리 수업 없이는 지루합니다. 다음은 몇 가지 개체 초기화 작업입니다.
작업
1 Friend 클래스 만들기
3개의 초기화 프로그램을 사용하여 Friend 클래스

만듭니다
.
2 Cat 클래스 만들기
5개의 초기화 프로그램을 사용하여 Cat 클래스 만들기:
- 이름
- 이름, 체중, 나이
- 이름, 나이(표준 체중)
- 체중, 색상(이름, 주소 및 나이는 알 수 없음, 골목 고양이입니다)
- 체중, 색상, 주소(다른 사람의 집 고양이)
Initializer의 작업은 개체를 유효하게 만드는 것입니다. 예를 들어 가중치를 알 수 없는 경우 평균 가중치를 지정해야 합니다. 고양이는 나이와 마찬가지로 체중이 전혀 있을 수 없습니다. 그러나 이름이 없을 수 있습니다(null). 주소에도 동일하게 적용되며 null일 수 있습니다.
Dog 클래스 만들기
3개의 초기화 프로그램을 사용하여 Dog 클래스 만들기:
- 이름
- 이름, 높이
- 이름, 높이, 색상
4 Circle 클래스 생성
3개의 이니셜라이저가 포함된 Circle 클래스 생성:
- centerX, centerY, radius
- centerX, centerY, radius, width
- centerX, centerY, radius, width, color
5 Rectangle 클래스 만들기
Rectangle 클래스를 만듭니다. 해당 데이터는 위쪽, 왼쪽, 너비 및 높이입니다. 초기화(...) 메서드를 최대한 많이 작성하세요.

예:
- 4개의 매개변수를 설정해야 합니다: 왼쪽, 위쪽, 너비, 높이
- 너비/높이가 설정되지 않음(둘 다 0과 같음)
- 높이가 설정되지 않음(다음과 같음) 너비), 사각형 만들기
- 다른 사각형의 복사본 만들기(매개 변수에 전달됨)

8 Elly가 생성자에 대해 이야기합니다.

- 생성자에 대해 알려줄 시간입니다. 매우 간단합니다. 프로그래머는 개체 생성 및 초기화를 위한 속기 표기법을 발명했습니다. 이전 레벨 05 - 15- 하지만 방금 이러한 초기화 프로그램을 이해했습니다... - 화내지 마세요. 자세히 살펴보십시오. 생성자를 사용하는 것이 더 편리하고 공간을 절약합니다. - 그래, 훨씬 좋아 보인다. 하지만 질문이 있습니다. 클래스에서 메서드 초기화를 작성하는 방법을 알고 있지만 클래스 내에서 생성자를 작성하려면 어떻게 해야 합니까? - 먼저 간단한 예를 살펴보겠습니다. 이전 레벨 05 - 16- 클래스에서 생성자를 선언하는 것은 매우 쉽습니다. 생성자는 initialize 메소드와 유사하지만 두 가지 차이점이 있습니다.
  • 생성자 메서드의 이름은 클래스 이름과 동일합니다 ( initialize 대신 ).
  • 생성자 메서드에는 반환 유형이 없습니다 (유형이 전혀 지정되지 않음).
- 사실 초기화 방법은 같지만 약간의 차이가 있습니다. 나는 그것을 얻었다.

9 디에고, 생성자 작업

- 좀 쉬었나 봐요. 괜찮은. 다음은 몇 가지 생성자 생성 작업입니다.
작업
1 Friend 클래스 만들기
3개의 생성자를 사용하여 Friend 클래스를 만듭니다.
- 이름
- 이름, 나이
- 이름, 나이, 성별
2 Cat 클래스 생성
5개의 생성자로 Cat 클래스 생성:
- 이름,
- 이름, 체중, 나이
- 이름, 나이(표준 체중)
- 체중, 색상, (이름, 주소 및 나이 알 수 없음. 골목 고양이입니다)
- 체중, 색상, 주소(다른 사람의 집 고양이)
Initializer의 작업은 개체를 유효하게 만드는 것입니다. 예를 들어 가중치를 알 수 없는 경우 평균 가중치를 지정해야 합니다. 고양이는 나이와 마찬가지로 체중이 전혀 있을 수 없습니다. 그러나 이름이 없을 수 있습니다(null). 주소에도 동일하게 적용되며 null일 수 있습니다.
Dog 클래스 만들기
3개의 생성자로 Dog 클래스 만들기:
- 이름
- 이름, 높이
- 이름, 높이, 색상
4 Circle 클래스 만들기
3개의 생성자로 Circle 클래스 만들기:
- centerX, centerY, radius
- centerX, centerY, radius, width
- centerX, centerY, radius, width, color
5 Rectangle 클래스 만들기
Rectangle 클래스를 만듭니다. 데이터는 위쪽, 왼쪽, 너비 및 높이입니다. 가능한 한 많은 생성자를 생성합니다.

예:
- 4개의 매개변수가 설정됨: 왼쪽, 위쪽, 너비, 높이
- 너비/높이가 설정되지 않음(둘 다 0)
- 높이가 설정되지 않음(너비와 같음), 정사각형 생성
- 다른 사각형의 복사본 만들기(매개 변수에 전달됨)

10 교수, 클래스 및 생성자

- 또 나야. 우리의 강의는 단순히 훌륭합니다. 나는 당신에게 지루한 강의에 대한 링크를 제공하지 않습니다. 여기 훌륭한 자료에 대한 링크가 있습니다! - 아직 여기 있니? 빨리 가서 읽어, 연구실에 가야 해. CodeGym 강의 5 토론

11 훌리오

- 이봐, 아미고! 나는 조금 피곤해. 조금 쉬고 수업을 시작합시다. 새로운 에피소드를 찾았습니다.

12 존 다람쥐

-안녕하세요, 군인! - 좋은 아침입니다! - 멋진 소식이 있습니다. 다음은 기술을 강화하기 위한 작업입니다. 매일 하면 기술이 빠르게 향상될 것입니다. 작업은 Intellij IDEA에서 수행하도록 특별히 설계되었습니다.
Intellij Idea에서 수행할 추가 작업
1 1. 세 가지 클래스
1. Duck 클래스와 유사하게 Cat and Dog 클래스를 만듭니다.
2. Cat 및 Dog 클래스에서 toString 메서드가 무엇을 반환해야 하는지 생각해 보십시오.
3. main 메서드에서 각 클래스에 두 개의 개체를 만들고 표시합니다.
4. Duck 클래스 개체가 생성되고 표시됩니다.
2 남자와 여자
1. 솔루션 클래스 내에 공용 정적 클래스인 남자와 여자를 만듭니다.
2. 클래스에는 name(String), age(int), address(String) 필드가 있어야 합니다.
3. 가능한 모든 매개변수를 전달할 생성자를 생성합니다.
4. 생성자를 사용하여 모든 데이터가 있는 각 클래스의 두 개체를 만듭니다.
5. [이름 + " " + 연령 + " " + 주소] 형식으로 개체를 표시합니다.
3. 공개 정적 클래스인 Dog 및 Cat을 만듭니다.
원하는 대로 각 클래스에 세 개의 필드를 추가합니다.
기억하는 만큼 톰과 제리 만화 캐릭터를 위한 물건을 만드세요.

예:
마우스 jerryMouse = new Mouse("제리", 12(높이, cm), 5(꼬리 길이, cm))
4 4. 현재 날짜
표시 «21 02 2014»와 유사한 형식으로 현재 날짜를 화면에 표시합니다.
5 5. 키보드에서 숫자를 읽고 총계 계산
키보드에서 숫자를 읽고 사용자가 «total»이라는 단어를 입력할 때까지 총계를 계산합니다. 합계를 화면에 표시합니다.
- 그 임무는 그린을 위한 것이었다. 더 복잡한 보너스 작업을 추가했습니다. 탑건 전용.
보너스 작업
1 1. 프로그램이 컴파일 및 실행되지 않습니다. 고쳐.
작업: 프로그램은 키보드에서 두 개의 숫자를 읽고 합계를 표시해야 합니다.
2 2. 프로그램에 새로운 기능을 추가합니다.
이전 작업: 키보드에서 두 개의 숫자를 읽고 최소값을 표시하는 새 기능을 추가합니다.
새 작업: 키보드에서 숫자 5개를 읽고 최소값을 표시하는 새 기능을 추가합니다.
3. 알고리즘 학습 및 실습. 과제
:
1. 0보다 큰 숫자 N을 콘솔에서 읽습니다.
2. 그런 다음 콘솔에서 N개의 숫자를 읽습니다
. 3. 입력된 N개의 숫자 중 최대값을 표시합니다.
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION