JAVA 오브젝트 - 멀티태스킹
15213 단어 JAVA 베이스.
객체 지향-다중
코드에서의 멀티태스킹 사용
코드에서 다태성을 나타내는데 사실은 한마디이다. 부류 인용은 부류 대상을 가리킨다.
형식: 부모 클래스 이름 대상 이름 = new 하위 클래스 이름().또는: 인터페이스 이름 대상 이름 = new 구현 클래스 이름 ();
public class Demo01Multi {
public static void main(String[] args) {
//
// ,
Fu obj = new Zi();
obj.method();
obj.methodFu();
}
}
다중 액세스 구성원 변수
public class Fu /*extends Object*/ {
int num = 10;
public void showNum() {
System.out.println(num);
}
public void method() {
System.out.println(" ");
}
public void methodFu() {
System.out.println(" ");
}
}
public class Zi extends Fu {
int num = 20;
int age = 16;
@Override
public void showNum() {
System.out.println(num);
}
@Override
public void method() {
System.out.println(" ");
}
public void methodZi() {
System.out.println(" ");
}
}
public static void main(String[] args) {
// ,
Fu obj = new Zi();
System.out.println(obj.num); // :10
// System.out.println(obj.age); // !
System.out.println("=============");
// , :10
// , :20
obj.showNum();
}
직접 액세스
대상 이름을 통해 구성원 변수에 직접 접근합니다: 등호 왼쪽이 누구인지, 누구를 우선적으로 사용하는지, 없으면 위로 찾습니다.
Fu obj = new Zi(); // ,
obj.num; // -> :10
간접 방문
간접적으로 구성원 방법을 통해 구성원 변수에 접근합니다: 이 방법이 누구에 속하는지, 누구를 우선적으로 사용하는지, 없으면 위로 찾습니다.
public class Fu /*extends Object*/ {
String champion = "lpl";
public void getChampion(){
System.out.println(this.champion);
}
...
}
public class Zi extends Fu {
String champion = "lck";
}
Zi ins = new Zi();
ins.getChampion(); // lpl
Fu champion = new Zi();
champion.getChampion(); // lpl
인용 형식이 무엇이든지 getChampion은 부모 클래스에 존재하기 때문에 구성원 변수num은 부모 클래스부터 찾고 없으면 계속 위로 찾으며 영원히 아래로 찾지 않습니다.
다중 접근 구성원 방법
public class Fu /*extends Object*/ {
public void method() {
System.out.println(" ");
}
}
public class Zi extends Fu {
@Override
public void method() {
System.out.println(" ");
}
}
public static void main(String[] args) {
Fu obj = new Zi(); //
obj.method(); // ,
// obj.methodFu(); // , ,
// , Fu,Fu methodZi , 。
// obj.methodZi(); // !
}