ดังนั้น ในขณะที่เรียนภาษา Java ฉันก็ไม่เข้าใจว่าประเภทการอ้างอิงคืออะไร และทำไมจึงต้องระบุเมื่อประกาศอินสแตนซ์ของคลาส ด้วย class
String
ทุกอย่างดูชัดเจน:
//Создаётся link типа String
String s = "Ссылка на an object, представляющий собой строку";
แต่ความชัดเจนทั้งหมดจะหายไปเมื่อมีการใช้แนวทางที่คล้ายกัน: สมมติว่ามี 2 คลาส: A (с методом a1)
และB (с методом b1)
.
class A
{
public static void a1()
{
///
}
}
class B
{
public static void b1()
{
///
}
}
นอกจากนี้ยังมีคลาสที่มีmain
เมธอด เช่น ออบเจ็กต์ของคลาสที่ถูกสร้างAB
ขึ้น
class GetTypeVar
{
public static void main(String[] args)
{
A obj1 = new A();
B obj2 = new B();
}
}
จริงๆ แล้ว อะไรคือความเข้าใจผิด:
- ประเภทของตัวแปรที่ถูกสร้างขึ้นในกรณีนี้มีความหมายว่าอย่างไร?
- คุณหมายถึงประเภทข้อมูลใด
class GetTypeVar
{
public static void main(String[] args)
{
B obj1 = new A();
A obj2 = new B();
}
}
นั่นคือลิงก์ที่นำไปสู่อินสแตนซ์ของคลาสหนึ่งจะถูกตั้งค่าเป็นประเภทคลาสของอีกคลาสหนึ่ง เพื่ออะไร? สิ่งนี้ให้อะไร? โดยทั่วไปการสร้างหัวข้อนี้ได้รับแรงบันดาลใจจากความคิดในการแสวงหาความจริง ฉันยินดีจะได้ยินคำจากลาที่มีคุณภาพ...
GO TO FULL VERSION