بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

معنی این علامت چیه ؟ ::

مدیریت گفتگو
ahm_android 8 سال پیش
آخرین تغییر: 8 سال پیش

باسلام و احترام خدمت دوستان عزیز

در دستور زیر : 

mDrawerLayout.post(this::close);

معنی و مفهموم اون چهارتا نقطه چیه ؟    

این کد در اندروید استودیو 2.3 و بالاتر میشناسه ولی در اندروید استودیو 2.1.2 نمیشناسه با

jdk1.8.0_101

نظرات

nooriDeveloper 8 سال پیش
چون از java 8 به بعد اضافه شده و یک refrence هستش که متد داخلی کلاس (تو اینجا close) رو میتونی فراخونی کنی برای اطلاعات بیشتر به لینک زیر مراجعه کنید: لینک

پاسخ‌ها 1

k112 8 سال پیش

سلام

method reference یکی از قابلیت های جاوا 8 میباشد که ارتباط نزدیکی با lamda expression دارد. به مثال زیر توجه فرماییید

class Rextester { 
public static void main(String args[]) {
Test test = new Test() {
@Override
public void print(String name) {
System.out.println(name);
}
};
test.print("Ali");

Test test1 = (name) -> System.out.println(name);
test1.print("Hassan");

Test test2 = System.out::println;
test2.print("Mehdi");
}
}

interface Test {
public void print(String name);
}

همه این نمونه ها یک کار انجام میدن پس اگر توجه کنید در تست2 وقتی به اون صورت ما تعریف کردیم یعنی اینکه متغییر که به متد پاس میشه رو به عنوان ورودی این متد قرار بده ... یعنی دقیقا مثل تست1 کار میکنه

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .