클래스 변수
public class FamilyTest {
public static void main(String[] args) {
Family.addr = "서울시 마포구 서교동";
//클래스 변수는 객체와 무관하게 사용할 수 있어요.
System.out.println(Family.addr);
Family.pro();
//클래스 메소드는 객체와 무관하게 사용할 수 있어요.
/*
Family father = new Family();
father.name = "김철수";
father.age = 32;
Family son = new Family();
son.name = "김쌍용";
son.age = 5;
System.out.println(father.name);
System.out.println(father.age);
System.out.println(father.addr);
System.out.println("----------------------");
System.out.println(son.name);
System.out.println(son.age);
System.out.println(son.addr);
father.addr = "제주시 서귀포시 애월읍";
System.out.println("==========================");
System.out.println(father.name);
System.out.println(father.age);
System.out.println(father.addr);
System.out.println("----------------------");
System.out.println(son.name);
System.out.println(son.age);
System.out.println(son.addr);
*/
}
}
public class Family {
String name;
int age;
public static String addr;
public void sayHello() {
System.out.println("안녕,"+name);
System.out.println("주소:"+addr);
}
public static void pro() {
// System.out.println("이름:"+name);
// System.out.println("나이:"+age);
// static 메소드에서는 static맴버에만 접근할 수 있어요!
System.out.println("주소:"+addr);
System.out.println("Family 클래스의 pro입니다.");
}
}
클래스 메소드는 객체와 무관하게 객체 없이도 동작하는 메소드 이기 때문에 객체를 생성해야만 확보된 메모리 영역인 일반 맴버변수에 접근할 수 없고 클래스 변수에만 접근할 수 있다
클래스 메소드
클래스의 상속
외부의 다른 클래스로 부터는 접근을 못하도록하고 상속받은 자식 클래스에게는 접근을 허용
생성자는 객체생성시에 자동수행되며 사용자가 생성자를 한개도 만들지 않으면 매개변수를 갖지 않는 기본생성자가 제공된다. 그러나 생성자를 한개라도 만들게 되면 기본생성자는 제공되지 않는다.
상속관계에 있을때


public class Person {
String name;
String addr;
String phone;
}
public class Customer extends Person {
String no;
int mileage;
}
public class CustomerTest {
public static void main(String[] args) {
Customer c = new Customer();
c.name = "박세연";
c.addr = "서울시 마포구 서교동";
c.phone = "010-1234-5678";
c.no = "A1234";
c.mileage = 1000;
System.out.println("고객명:"+c.name);
System.out.println("주소:"+c.addr);
System.out.println("전화:"+c.phone);
System.out.println("고객번호:"+c.no);
System.out.println("마일리지:"+c.mileage);
}
}
국비학원에서 배운것과 따로 공부한 것을 정리한 것입니다
참고
나도코딩 유튜브