Latest web development tutorials
×

Java หลักสูตร

Java หลักสูตร Java แนะนำโดยย่อ Java การกำหนดค่าการพัฒนาสภาพแวดล้อม Java พื้นฐานไวยากรณ์ Java วัตถุและการเรียน Java ชนิดข้อมูลพื้นฐาน Java ประเภทตัวแปร Java การปรับเปลี่ยน Java ผู้ประกอบการ Java โครงสร้างห่วง Java สาขาโครงสร้าง Java Number หมวดหมู่ Java Character หมวดหมู่ Java String หมวดหมู่ Java StringBuffer Java แถว Java วันที่เวลา Java นิพจน์ปกติ Java ทาง Java Stream,File,IO Java Scanner หมวดหมู่ Java การจัดการข้อยกเว้น

Java เชิงวัตถุ

Java สืบทอด Java Override/Overload Java polymorphism Java ระดับนามธรรม Java บรรจุภัณฑ์ Java อินเตอร์เฟซ Java บรรจุภัณฑ์

Java การสอนที่ทันสมัย

Java โครงสร้างข้อมูล Java คอลเลกชันกรอบ Java ยาชื่อสามัญ Java การทำให้เป็นอันดับ Java เขียนโปรแกรมเครือข่าย Java ส่ง Email Java การเขียนโปรแกรมแบบมัลติเธรด Java Appletรากฐาน Java เอกสารความคิดเห็น Java ตัวอย่าง Java 8 คุณสมบัติใหม่ Java MySQL สัมพันธ์

Java วิธีที่ 8 เริ่มต้น

Java 8 คุณสมบัติใหม่ Java 8 คุณสมบัติใหม่


Java 8 วิธีการอินเตอร์เฟซที่เริ่มต้นใหม่

ใส่เพียงแค่วิธีการเริ่มต้นเป็นอินเตอร์เฟซที่สามารถดำเนินการวิธีการและไม่จำเป็นต้องมีระดับการดำเนินการที่จะใช้วิธีการของ

เราเพียงแค่หน้าชื่อของวิธีการเพื่อเพิ่มคำหลักเริ่มต้นที่จะใช้วิธีการเริ่มต้น

ทำไมต้องคุณลักษณะนี้?

ก่อนที่อินเตอร์เฟซที่เป็นดาบสองคมเพื่อประโยชน์ของนามธรรมมากกว่าสำหรับข้อบกพร่องในการเขียนโปรแกรมที่เฉพาะเจาะจงก็คือว่าเมื่อคุณจำเป็นต้องปรับเปลี่ยนอินเตอร์เฟซที่จำเป็นในการปรับเปลี่ยนทั้งชั้นที่ใช้อินเตอร์เฟซ, คอลเลกชัน Java ปัจจุบันกรอบ 8 ก่อนที่จะวิธีการ foreach ไม่มี มักจะคิดว่าการแก้ปัญหาใน JDK เพิ่มวิธีการใหม่และการใช้งานอินเตอร์เฟซที่เกี่ยวข้อง แต่รุ่นที่ได้รับการปล่อยตัวออกมาก็เป็นได้ในเวลาเดียวกันการเพิ่มวิธีการใหม่เพื่ออินเตอร์เฟซที่ไม่ได้ส่งผลกระทบต่อการใช้งานที่มีอยู่ ดังนั้นการแนะนำของวิธีการเริ่มต้น วัตถุประสงค์ของพวกเขาคือการแก้ปัญหาการปรับเปลี่ยนที่มีอยู่และการดำเนินงานของอินเตอร์เฟซใช้ไม่ได้กับปัญหาที่เกิดขึ้น

ไวยากรณ์

ไวยากรณ์วิธีการเริ่มต้นจะเป็นดังนี้:

public interface vehicle {
   default void print(){
      System.out.println("我是一辆车!");
   }
}

วิธีการเริ่มต้นหลาย

อินเตอร์เฟซที่มีวิธีการเริ่มต้นให้พิจารณากรณีที่มีระดับให้ดำเนินการเชื่อมต่อหลายและการเชื่อมต่อเหล่านี้มีวิธีการเริ่มต้นเดียวกันตัวอย่างต่อไปนี้แสดงให้เห็นถึงการแก้ปัญหาสำหรับสถานการณ์นี้:

public interface vehicle {
   default void print(){
      System.out.println("我是一辆车!");
   }
}

public interface fourWheeler {
   default void print(){
      System.out.println("我是一辆四轮车!");
   }
}

วิธีแรกคือการสร้างวิธีการเริ่มต้นของคุณเองเพื่อแทนที่วิธีการเริ่มต้นของการเขียนใหม่อินเตอร์เฟซ:

public class car implements vehicle, fourWheeler {
   default void print(){
      System.out.println("我是一辆四轮汽车!");
   }
}

วิธีการแก้ปัญหาที่สองสามารถใช้สุดที่จะเรียกวิธีการเริ่มต้นอินเตอร์เฟซที่ระบุ

public class car implements vehicle, fourWheeler {
   default void print(){
      vehicle.super.print();
   }
}

วิธีการเริ่มต้นคงที่

Java 8 คุณสมบัติก็คืออินเตอร์เฟซสามารถประกาศ (และอาจจัดให้มีการดำเนินงาน) วิธีการคง ตัวอย่างเช่น:

public interface vehicle {
   default void print(){
      System.out.println("我是一辆车!");
   }
	// 静态方法
   static void blowHorn(){
      System.out.println("按喇叭!!!");
   }
}

วิธีการเริ่มต้นของตัวอย่าง

เราสามารถใช้รหัสต่อไปนี้เพื่อหาข้อมูลเกี่ยวกับวิธีการเริ่มต้นคุณสามารถวางแฟ้มรหัส Java8Tester.java นี้:

public class Java8Tester {
   public static void main(String args[]){
      Vehicle vehicle = new Car();
      vehicle.print();
   }
}

interface Vehicle {
   default void print(){
      System.out.println("我是一辆车!");
   }
	
   static void blowHorn(){
      System.out.println("按喇叭!!!");
   }
}

interface FourWheeler {
   default void print(){
      System.out.println("我是一辆四轮车!");
   }
}

class Car implements Vehicle, FourWheeler {
   public void print(){
      Vehicle.super.print();
      FourWheeler.super.print();
      Vehicle.blowHorn();
      System.out.println("我是一辆汽车!");
   }
}

การดำเนินงานของสคริปดังกล่าวข้างต้นออกเป็น:

$ javac Java8Tester.java 
$ java Java8Tester
我是一辆车!
我是一辆四轮车!
按喇叭!!!
我是一辆汽车!

Java 8 คุณสมบัติใหม่ Java 8 คุณสมบัติใหม่