본문 바로가기

분류 전체보기317

[Java] getter / setter 함수 사용하기 📝getter / setter 멤버변수가 프라이빗(private)으로 되어있으면 멤버변수에 데이터를 저장하거나 가져오는 함수가 있어야한다 그 함수를 getter와 setter라고 한다 public class Member { private String name; private String tel; private String address; // 멤버변수가 프라이빗(private)으로 되어있으면 멤버변수에 데이터를 저장하거나 가져오는 함수가 있어야한다 // getter / setter 라고 부른다 // 저장하는 함수 public void setName(String name) { this.name = name; } public void setTel(String tel) { this.tel = tel; } pu.. 2023. 1. 19.
[Java] this로 사용하는 멤버변수 📝this로 사용하는 멤버변수 멤버변수와 로컬변수의 이름이 같으면 컴퓨터도 헷갈리고 사람도 헷갈린다 따라서 this라는 키워드를 이용해서 구분해주는 용도로 사용 멤버변수와 로컬변수는 영역이 다르니까 이름을 같게해도 된다 (멤버변수 > 힙 영역 / 로컬변수 > 스택 영역의 함수영역(함수가 끝나면 스택에 있던 함수 영역이 사라진다)) ※ 함수 안에 파라미터나 함수 안의 변수 = 로컬변수 package data; public class Member { private String name; private String tel; private String address; public Member(){ } // this 라는 키워드 this는 클래스의 멤버변수나 메소드를 가르킬때 사용한다 public Member(S.. 2023. 1. 19.
[Java] 접근제어자 📝접근제어자 클래스의 메소드와 멤버변수를 다른 파일(패키지)에서 사용가능하도록 하는 접근제어자 접근제어자의 위치는 데이터타입 왼쪽에 위치한다 접근제어자 종류는 4가지가 있다 1. 아무것도 안적는 것 > 디폴트(default) : 같은 패키지 내에서만 접근가능 2. public : 아무데서나 접근가능 3. private : 다른곳에서 접근불가 4. protected : 상속관계만 접근 가능(상속 받은 클래스 안에서만 사용가능) // 패키지는 폴더를 의미한다 package data; public class Member { // 접근제어자의 위치는 데이터타입 왼쪽에 위치 private String name; private String tel; private String address; public Member.. 2023. 1. 19.
[Java] Constructor(생성자) 사용하기 📝Constructor(생성자) 사용하기 생성자란 눈에 보이지 않게 자동으로 만들어지는 함수이다 특징은 리턴의 데이터 타입이 없고 함수의 이름이 만든 클래스 이름과 동일하다 ※ 디폴트 생성자 말고 생성자 오버로딩으로 생성자를 만들면 꼭 기존의 디폴트 생성자 Member() 를 눈에 보이게 만들어 놓아야한다 안그럼 Member()는 동작하지 않는다 public class Member { String name; String tel; String address; // 아래 함수는 눈에 보이지않게 자동으로 만들어지는 함수이다 // 이런 함수를 Constructor(생성자)라고 한다 Member(){ } // 생성자 오버로딩 // 위의 디폴트생성자 말고 이렇게 생성자 오버로딩으로 생성자를 만들면 // 꼭 위의 M.. 2023. 1. 19.
[Java] 메소드 오버로딩하기(Method Overloading) 📝메소드 오버로딩하기(Method Overloading) 아래 코드처럼 메소드(함수)의 이름은 같고 파라미터의 데이터 타입이나 파라미터의 갯수는 달라도 똑같은 이름으로 처리 할 수 있도록 해주는 기능이 메소드 오버로딩(Method Overloading)이다 public class Add { // 두 정수를 더해서 합을 리턴하는 함수 int add(int x, int y) { return x + y; } // 두 실수를 더해서 합을 리턴하는 함수 double add(double x, double y) { return x + y; } // 문자열 더하기 String add(String x, String y) { return x + y; } // 정수 세개 합을 리턴하는 함수 int add(int x, int.. 2023. 1. 18.
[Java] Static 전역(전체영역)변수 사용하기 📝Static 전역(전체영역)변수 사용하기 클래스의 멤버 변수를 만들때 앞에 static를 입력해주면 해당 변수는 전역변수가 된다 전역변수(Static)는 Heap영역이 아닌 data 영역이라는 메모리에 생긴다 public class StaticVar { // static 전역변수 > 공유 static int count = 1; // 멤버 변수 > 자기 자신만의 데이터 int data = 0; void print() { System.out.println("cont : " + count); System.out.println("data : " + data); } } 메인에 객체를 생성해보겠다 public class StaticMain { public static void main(String[] args) .. 2023. 1. 18.
[Java] 클래스와 객체 📝클래스와 객체 클래스는 틀, 객체(인스턴스)는 실제 메모리에 올라가는 것이다 클래스 생성 public class Product { // 변수인데 클래스 안에 있는 변수 : 멤버변수 // 이 변수들은 Heap 메모리에 생긴다 int number; String name; // 클래스는 메소드(함수)도 있다 // 제품번호 : 1, 제품명 : 컴퓨터 출력하는 함수 만들기 void print() { System.out.println("제품번호 : " + number + ", 제품명 : " + name); } } 클래스를 가지고 실제 데이터를 만든다 > 객체 생성 ※ new Product() = new 연산자를 이용해 Product 클래스에 만든 변수묶음(틀)을 Heap 메모리에 그대로 찍어내 저장 공간을 만든다.. 2023. 1. 18.
[Java] 함수(메소드) 정의해서 사용하기 📝함수(메소드) 정의해서 사용하기 이클립스에서 클래스를 새로 만들면 아래 코드처럼 화면을 띄워준다 public class FuncTest { public static void main(String[] args) { } } 클래스 안에서 함수를 만들고 메인 안에서 함수를 가져와 사용한다 ※ 함수를 만들때 앞의 데이터 타입은 return의 데이터 타입을 입력해주고 함수명 입력, 파라미터에는 입력 받을 데이터 타입을 입력해준다 리턴값이 없으면 에러가 발생하니 리턴을 꼭 입력해준다 public class FuncTest { // 숫자 두개를 입력받으면 그 숫자를 더해서 리턴해주는 함수 만들기 int add(int a, int b) { int total = a + b; return total; } public s.. 2023. 1. 18.
[Java] 배열(Array) 다루기 📝배열(Array) 다루기 자바의 가장 기본적인 데이터를 여러개 저장하는 테이터 스트럭처는 Array다 ※ 하지만 자바의 Array는 사용하기가 번거롭다 따라서 실무에서는 ArrayList와 HashMap을 사용한다 자바의 Array는 저장할 데이터 갯수를 꼭 지정해야 한다 int[] scoreArray = new int[50]; scoreArray[0] = 70; scoreArray[1] = 90; Array에 반복문과 조건문 사용하여 데이터 입력하기 // 학생 20명의 점수를 모두 30으로 저장하기 int[] studentArray = new int[20]; for( int i = 0; i < 20; i++ ) { studentArray[i] = 30; } // 인덱스가 7의 배수가 되는 학생에게는 .. 2023. 1. 18.
[Java] 반복문(Loop) 다루기(for, while) 📝반복문(Loop) 다루기 (for, while) 1, 2, 3, 4, 5를 한줄로 출력하고싶은데 아래 코드처럼 입력하면 번거롭고 너무 많은 코드를 입력해야하기때문에 반복문을 사용한다 System.out.println(1); System.out.println(2); System.out.println(3); System.out.println(4); System.out.println(5); for문의 기본 구조는 for(반복할 변수의 초기 값; 반복 조건; 반복할 변수를 변화) { } 이다 i++ 문법은 i의 값에 1을 더한 후 다시 i에 저장한다는 것(i = i + 1) 메모리를 빼고싶으면 1--로 입력한다 아래 코드의 cpu 실행 순서 int i = 0; i에 0을 저장하고 → i < 5; 결과 값이 트.. 2023. 1. 18.