자바7 [JAVA] Java의 인자 전달 , 포인터 ? - call by value, call by reference ※ JAVA의 인자 전달- 자바에서 지원하는 타입에는 primitive type과 reference type이 있다.- primitive type : byte, char, short, int, long, float, double, boolean 등과 같은 자바 기본 타입- reference type : java.lang.object를 상속받는 모든 객체 1. primitive type이 인자로 전달되는 경우 public class test1 { public static void main(String[] args) { // TODO Auto-generated method stub int a = 10; System.out.println("a = "+a); add(a); System.out.prin.. 2024. 9. 29. [JAVA] 자바 메모리 구조 자바 메모리 구조 자바의 메모리 구조는 메서드 영역, 스택 영역, 힙 영역 으로 나눌 수 있다. 자바에서 어떤 동작을 하냐에 따라 각각의 메모리가 저장하는 요소가 다른데, 간단히 정리해보자! 메서드 영역(Method Area)클래스 정보를 저장한다. (클래스가 실행되는 코드, 필드등 모든 코드가 존재함.)static 변수들을 보관한다. 스택 영역(Stack Area)자바를 실행하면, 하나의 실행 스택이 생성된다.스택프레임: 지역변수, 중간 연산결과, 메서드 호출결과등을 포함한다.메서드를 호출할때마다 하나의 스택 프레임이 스택에 쌓이고, 메서드가 종료되면 해당 스택 프레임이 사라진다. 힙 영역(Heap Area)객체(인스턴스), 배열이 생성되는 영역이다.더이상 참조되지 않는 객체는 자바의 GC(Garb.. 2024. 8. 28. [JAVA] 기본형과 참조형 | 메서드 호출 | 데이터 타입 자바에서는 변수의 타입을 크게 기본형과 참조형으로 분류한다.기본형int, long, boolean, double 형과 같이 변수에 사용할 값을 '직접' 넣을 수 있는 데이터 타입연산가능함. 참조형School school1=new School(); , int[] students 와 같이 데이터에 접근하기 위한 '참조값'을 저장하는 데이터 타입.개발자가 정한다위 예시와 같이 객체 또는 배열에서 사용됨.객체 : ' . ' 을 통해 메모리 내의 객체에 찾아가서 사용함. ex) school1.name 연산이 불가능함. (객체의 클래스 멤버변수에 접근한 경우는 가능함.) 클래스는 모두 참조형이다. String 역시 사실 클래스이며, 참조형이다. Student s1 = new Student();s1.grade = .. 2024. 7. 30. [JAVA] 클래스(Class), 객체, 인스턴스 자바(JAVA)는 객체 지향 언어로서, 클래스와 객체로 이루어져있다. 그러므로 클래스와 객체, 인스턴스는 자바에서 매우매우 중요한 개념이다.! 먼저 클래스에 대해 정리하면 이렇다. 클래스 (Class) 클래스는여러 변수들을 하나의 클래스로 묶어 사용할 수 있다는 특징을 가진다. 메인함수가 쓰이는 클래스 외에 클래스 파일을 새로 만들어 사용한다. 아래는 MovieReview라는 이름의 클래스 선언 예시다.package class1;public class MovieReview{ String title; String review;} MovieReview 클래스를 정의하여, 내부에 제목(title)과 리뷰를 String으로 정의한 것을 확인할 수 있다. 이렇게 클래스를 정의했다면.. 2024. 7. 18. [JAVA] 메서드(Method), 매개변수(Parameter), 메서드 오버로딩 c++에서 함수호출하면서 지겹도록 들었던 파라미터,인자,매개변수! 가 자바에서도 등장했다. 자바에서는 어떻게 사용되는지 간단히 정리해야겠다 :) 메서드 (Method) 자바에서 함수를 메서드(Method)라고 한다. 메서드는 main함수 아래에 함수를 생성하여 호출하는 방식으로 사용할 수 있다.package method;public class Method3{ public static void main(String[] args) { checkAge(18); checkAge(34); } public static void checkAge(int age) { if(age 위의 코드를 통해 메소드의 특성에 대해 살펴보면, 1. 메소드는 publ.. 2024. 7. 15. [JAVA] 배열 선언과 생성, 2차원배열 +참조형,기본형 자바의 배열(Array) 배열 생성자바에서 배열 생성은 아래와 같이 한다.아래의 배열 예시에서 'student'는 배열변수에 해당한다.int[] =student; // 배열 변수 선언students= new int[5] //배열 생성 또 아래와 같이 배열을 나타낼 수 있는데, 위와 동일한 배열이다.new int[5]로 배열을 생성하면 배열의 크기만큼 메모리를 확보한다.int[] student = new int[5]; 배열 안에 값을 하드코딩하여 사용할 때에는 아래와 같이 사용한다.int[] student = {90,30,50,60,20}; 배열값 읽기 배열의 특정 인덱스에 해당하는 값을 읽고 싶다면 아래처럼 나타낼 수 있다. System.out.println(student[3]); 기본형(Pri.. 2024. 7. 15. [JAVA] Scanner 이용해 입력 받기 자바의 Scanner 클래스 자바는 Scanner라는 메소드를 이용해서 사용자의 입력을 받는다. 1. 입력 하는 데이터의 타입에 따라 구분한다.int형nextInt()String형next() 혹은 nextLine() int형은 nextInt() 을, String형은 nextLine() 혹은 nextLine() 을 사용해서 입력을 받을 수 있다. next() :공백을 기준으로 한 단어 또는 한 문자씩 입력받는다.버퍼에 입력된 문자나 문자열에서 공백 전까지의 단어를 읽는다.개행 문자를 가져오지 않는다.nextLine() :문자 또는 엔터를 치기 전까지의 문장 전체를 입력받는다.버퍼에 입력된 문자열을 개행 문자까지 다 가져온다. ex)Scanner scanner = new Scanner(System... 2024. 7. 14. 이전 1 다음