//Mainclass.java
//메서드 선언 호출
public class Mainclass {
public static void main(String[] args) {
ChildClass child1 = new ChildClass();
child1.setInfo("홍길동", "M", 15);
child1.getInfo();
System.out.println();
ChildClass child2 = new ChildClass();
child2.name = "ddd";
child2.gender = "F";
child2.age = 15;
child2.getInfo();
System.out.println();
ChildClass getin1 = new ChildClass();
getin1.getInfo(10, true, 1.11d, 'a', "asd");
System.out.println();
ChildClass getin2 = new ChildClass();
getin2.getInfo(10, 30);
System.out.println();
ChildClass getin3 = new ChildClass();
getin3.getInfo("asdf","asdf");
// getin3.mySecrete(); --> 접근 못한다고 오류가 나온다.
}
}
//ChildClass
public class ChildClass {
public String name;
public String gender;
public int age;
public ChildClass() {
System.out.println("-- ChildClass constructor --");
}
public void setInfo(String n, String g, int a) {
System.out.println(" -- getInfo() START -- ");
name =n;
gender = g;
age = a;
}
public void getInfo() {
System.out.println(" -- getInfo() START -- ");
System.out.println(" name : " + name);
System.out.println(" gender : " + gender);
System.out.println(" age : " + age);
}
//중복 메서드(overloading)
/*public void getInfo() */
//getInfo() --> ()안 매개변수는 필요시에만 정의한다.
public void getInfo(int i, boolean b, double d, char c, String s) {
//매개변수는 자료형과 변수(지역변수)로 이루어진다.
System.out.println(" -- getInfo -- I");
System.out.println(" i = " + i);
System.out.println(" b = " + b);
System.out.println(" d = " + d);
System.out.println(" c = " + c);
System.out.println(" s = " + s);
}
public void getInfo(int x, int y) {
System.out.println(" -- getInfo -- II");
System.out.printf("parameter --> x : %d, y : %d \n", x,y);
}
public void getInfo(String s1, String s2) {
System.out.println(" -- getInfo -- III");
System.out.printf("parameter --> s1 : %s , s2 : %s \n", s1,s2);
}
/*메서드를 호출할 때 접근자에 따라서 호출이 불가할 수 있다.
* 외부에서 호출
* 메서드 호출부---->public 매서드 호출가능
* 메서드 호출부---->private 매서드 호출불가능
* 객체(private 메서드 <---->public 매서드 ) 호출가능
*/
private void mySecrete() {
System.out.println("--");
}
}
결과값
-- ChildClass constructor --
-- getInfo() START --
-- getInfo() START --
name : 홍길동
gender : M
age : 15
-- ChildClass constructor --
-- getInfo() START --
name : ddd
gender : F
age : 15
-- ChildClass constructor --
-- getInfo -- I
i = 10
b = true
d = 1.11
c = a
s = asd
-- ChildClass constructor --
-- getInfo -- II
parameter --> x : 10, y : 30
-- ChildClass constructor --
-- getInfo -- III
parameter --> s1 : asdf , s2 : asdf
'Develop > JAVA' 카테고리의 다른 글
JAVA 객체 생성자 소멸자 this키워드 (0) | 2023.10.21 |
---|---|
JAVA 객체와 메모리(레퍼넌스) (0) | 2023.10.21 |
JAVA 객체지향 프로그래밍 (0) | 2023.10.21 |
JAVA Collections(List,Map) (0) | 2023.10.17 |
JAVA 문자열클래스(String,StringBuffer, StringBuilder) (0) | 2023.10.17 |