본문 바로가기

Java29

[Java] 메소드 오버라이딩하기(Method Overriding) 📝메소드 오버라이딩하기(Method Overriding) 상속받은 함수를 재활용하여 코드를 작성할 수 있도록 하는 메소드 오버라이딩(Method Overriding) 상속할 클래스(부모 클래스) 코드 작성 public class Parent { String name; int age; private int money; public int getMoney() { return money; } public void setMoney(int money) { this.money = money; } void print() { System.out.println("name : " + name); System.out.println("age : " + age); System.out.println("money : " + mon.. 2023. 1. 19.
[Java] 클래스 상속 📝클래스 상속 먼저 상속할 클래스를 먼저 만들어줬다 public class Parent { String name; int age; private int money; public int getMoney() { return money; } public void setMoney(int money) { this.money = money; } void printMoney() { System.out.println("name : " + name); System.out.println("age : " + age); System.out.println("money : " + money); } } 상속을 받을 클래스를 만들때는 상속 받을때 사용하는 키워드 extends를 입력하고 클래스명을 입력해준다 아래 클래스인 Child.. 2023. 1. 19.
[Java] 클래스 멤버변수에 데이터 셋팅하기(객체 생성) 📝클래스 멤버변수에 데이터를 셋팅하는 방법 3가지 첫번째 방법은 저장공간을 만들어 각 멤버변수에 데이터를 입력한다 public class Test { String name; String tel; String address; } public class TestMain { public static void main(String[] args) { Member m1 = new Member(); m1.name = "홍길동"; m1.tel = "010-1111-2222"; m1.address = "인천 서구 가좌동"; } } 두번째 방법은 클래스에 메소드(함수)를 만들어 데이터를 입력한다 public class Test { String name; String tel; String address; public set.. 2023. 1. 19.
[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.