아마 static 변수와 값 변화에 대해 알려주시고 싶었던 듯한 예제 원래 코드 package Day11; public class MethodTest1 { static int a = 10; //전역변수 static void abc() { int a = 30; a = 20; // 4. 안주고 안받고 인데, 이 메소드 내부에 출력문 자체가 없으므로 아예 무출력 } static void kor() { System.out.println(a); } public static void main(String[] args) { // TODO Auto-generated method stub int a = 20; abc(); // 별 의미가 없음. 리턴값이 없으니 출력 자체도 안 됨. System.out.println(a)..
코드 package Day11; public class MethodTest { //1. 주고 받고 static String printHello(String name) { return "안녕하세요"+name+"님"; } //2. 주고 안받고 static int sum() { int a = 10; int b = 20; return a + b; } //3. 안주고 받고 static void outputName(String name) { System.out.println("안녕하세요"+name+"님"); } //4. 안주고 안받고 static void printBye() { System.out.println("바이~~~~~"); } public static void main(String[] args) { // ..

일단, 복습하면서 연산자가 다른데 쓰일 수가 없는데, 대입연산자만 다른데 쓰일 수가 있다. 전부 메소드 내에 있어야 한다. 메소드 또는 함수가 왜 필요한가요? => 코드의 재사용성 때문에! 1.주고 받고 (리턴값 o, 매개변수 o) 2.주고 안받고(리턴값 o, 매개변수 x) 3.안주고 받고(리턴값 x, 매개변수 o) 4.안주고 안받고(리턴값 x, 매개변수 x) 형태 1. 주고 받고 Int abc(int a,…..){ return 자료형 int } 2. 주고 안받고 // Get Int abc(){ return 자료형 int } 3. 안주고 받고 // Set Void abc(int a,….){ } 4. 안주고 안받고 // 출력 Void abc(){ } 예시 1. 주고 받고 : 식당 => 돈 줬으니까 음식이 ..
package Day11; import java.util.Scanner; public class Q4 { static int a = 0; static int b = 0; static double a1 = 0; static double b1 = 0; static String operator; static int add(int a, int b) { return a+b; } static int multiple() { return a*b; } static void substract(int a, int b) { System.out.println(a-b); } static void divide() { if (b == 0) { System.out.println("0으로 나눌 수 없습니다."); } else { Sys..
메서드의 입력값과 리턴값 메서드는 들어온 입력값을 가지고 어떤 처리를 하여 적절한 리턴값을 돌려주는 블랙박스와 같다. 입력값 ---> 메서드(블랙박스) ----> 리턴값 메서드의 구조 자바의 메서드 구조는 아래와 같다. 리턴자료형 메서드명(입력자료형1 매개변수1, 입력자료형2 매개변수2, ...) { ... return 리턴값; // 리턴자료형이 void 인 경우에는 return 문이 필요없다. } 리턴자료형은 메서드 수행 후 돌려줄 값의 자료형을 의미한다. 메서드의 리턴값은 return 이라는 명령을 사용한다. 메서드는 입출력 유무에 따라 다음과 같이 4가지로 분류할 수 있다. 입력과 출력이 모두 있는 메서드 입력과 출력이 모두 없는 메서드 입력은 없고 출력은 있는 메서드 입력은 있고 출력은 없는 메서..
다른 프로그래밍 언어에는 함수라는 것이 별도로 존재한다. 하지만 자바는 클래스를 떠나 존재하는 것은 있을 수 없기 때문에 자바의 함수는 따로 존재하지 않고 클래스 내에 존재한다. 메소드란? 자바는 이러한 클래스 내의 함수를 메서드라고 부른다. 믹서기 비유 * 믹서기에 과일을 넣는다. * 그리고 믹서를 이용해서 과일을 갈아서 과일 쥬스를 만들어 낸다. * 우리가 믹서기에 넣는 과일은 입력이 되고 과일 쥬스는 그 출력(리턴값)이 된다. 입력을 가지고 어떤 일을 수행한 다음에 결과물을 내어놓는 것 메소드 사용 이유 가끔 프로그래밍을 하다 보면 똑같은 내용을 자신이 반복해서 적고 있는 것을 발견할 때가 있다. 이 때가 바로 메서드가 필요한 때이다. 여러 번 반복해서 사용된다는 것은 언제고 또다시 사용할 만한 가..
객체 변수는 공유되지 않는다. main 메서드 변경 class Animal { String name; public void setName(String name) { this.name = name; } } public class Sample { public static void main(String[] args) { Animal cat = new Animal(); cat.setName("boby"); Animal dog = new Animal(); dog.setName("happy"); } } cat객체에는 "boby"라는 이름을 대입하고 dog객체에는 "happy"라는 이름을 대입했다. 이렇게 하면 setName 메서드에 의해 다음과 같은 문장이 두번 실행될 것이다 cat.name = "boby"; do..
이제 객체 변수에 값을 대입하는 방법에 대해서 알아보자. 객체 변수에 값을 대입하는 방법에는 여러가지가 있지만 여기서는 가장 보편적인 메서드를 이용하는 방법에 대해서 알아보자. 클래스에는 객체 변수와 더불어 메서드(Method)라는 것이 있다. 메서드는 클래스 내에 구현된 함수를 의미하는데 보통 함수라고 말하지 않고 메서드라고 말한다. 메서드 추가하기 class Animal { String name; public void setName(String name) { this.name = name; } } public class Sample { public static void main(String[] args) { Animal cat = new Animal(); System.out.println(cat.na..