JAVA/개념 - 김영한 강의
-
멤버변수의 종류와 자바의 메모리 구조(메서드, 스택, 힙)JAVA/개념 - 김영한 강의 2024. 9. 15. 09:49
멤버 변수의 종류1. 인스턴스 변수: static이 붙지 않은 멤버 변수 인스턴스를 만들 때 마다 새로 만들어진다. class Dog { String name; int age; void bark() { System.out.println(name + " is barking!"); }}public class Main { public static void main(String[] args) { // 클래스 Dog의 인스턴스를 생성 Dog myDog = new Dog(); // myDog는 Dog 클래스의 인스턴스 myDog.name = "Buddy"; myDog.age = 3; // 인스턴스를 통해 메서드 ..
-
접근제어자 / 캡슐화JAVA/개념 - 김영한 강의 2024. 8. 30. 15:51
접근 제어자의 종류private : 모든 외부 호출을 막는다(해당 클래스 내에서만 사용가능).default (package-private): 같은 패키지안에서 호출은 허용한다.protected : 같은 패키지안에서 호출을 허용하며, 패키지가 달라도 상속 관계의 호출 또 허용한다.public : 모든 외부 호출을 허용한다. default(package-private)접근 제어자를 명시하지 않으면 같은 패키지 안에서 호출을 허용하는 default 접근 제어자가 적용된다. default 라는 용어는 해당 접근 제어자가 기본값으로 사용되기 때문에 붙여진 이름이지만, 실제로는 package private이 더 정확한 표현이다. 왜냐하면 해당 접근 제어자를 사용하는 멤버는 동일한 패키지 내의 다른 클래스에서 만 접..
-
생성자 -오버로딩(Overloading)과 this() + 오버라이딩(Overriding)JAVA/개념 - 김영한 강의 2024. 8. 25. 07:12
생성자 객체 생성 직후 객체를 초기화하기 위한 특별한 메서드반복적으로 초기화하지 않고 처음에 초기화해놔서 나중에 쓰기 편함생성자를 사용하면 필수값 입력을 보장받아 오류가 생기지 않는다.이름이 클래스 이름과 같아야 한다. 따라서 첫 글자도 대문자다.반환타입이 없다.매개면수가 없는 생성자를 기본 생성자라고 한다.클래스에 생성자가 하나도 없으면 자바는 매개변수가 없고 작동하는 코드가 없는 기본 생성자를 자동으로 만들어준다. 그러나 생성자가 하나라도 있으면 자바는 기본 생성자를 만들지 않는다. 생성자 -오버로딩(Overloading) 생성자도 메서드 오버로딩처럼 매개변수만 다르게 해서 여러 생성자를 만들 수 있다. public class MemberConstruct { String name; int..
-
생성자JAVA/개념 - 김영한 강의 2024. 8. 24. 23:33
생성자(Constructor)객체 생성 후 바로 초기값을 할당해야하는 경우가 많음. 이를 계속 반복하기보다 편리하게 객체를 사용할 수 있도록 생성자를 사용. 생성자를 사용하면 객체를 생성하는 시점에 즉시 필요한 기능을 수행할 수 있기에.생성자의 이름은 클래스 이름과 같아야 한다. 따라서 첫 글자도 대문자로 시작한다.생성자는 반환 타입이 없다. 비워두어야 한다.나머지는 메서드와 같다.public class MemberConstruct { String name; int age; int grade; // MemberConstruct public class ConstructMain1 { public static void main(String[] args) { ..
-
기본형과 참조형JAVA/개념 - 김영한 강의 2024. 8. 13. 23:22
대원칙: 자바는 항상 변수의 값을 복사해서 대입한다. 기본형, 참조형 모두 그렇다. 기본형과 참조형?기본형(Primitive Type)실제 사용하는 값을 복사해서 대입변수 a자체를 b에 대입하는것이 아니다!int a = 10;int b = a; // 모든 변수는 복사해서 대입한다.int, long, double, boolean 숫자를 직접 변수에 담을 수 있으므로 변수끼리 계산이 가능하다. 참조형(Reference Type)Studnet s1 = new Studne();Student s2 = s1;Student student1, int[] students와 같이 데이터에 접근하기 위한 참조(위치, 주)를 저장하는 데이터.기본형이 실제 사용하는 객체를 이용한다면, 참조형은 객체의 위치를 가리키는..