Hỏi về Toast trong android

Cho em hỏi về hàm makeTest ạ
tham số Context truyền vào mình ghi là MainActivity.this với ghi là this thì có khác gì nhau không ạ
Em cám ơn ạ

tùy vào activity bạn đang code là j

anh giải thích rõ hơn được không ạ

Có đấy bạn MainActivity.this và this mang ý nghĩa khác nhau tùy vào nơi bạn gọi từ khóa này
từ khóa this mang ý nghĩa như một địa chỉ (reference) tới chính Object mà nó được gọi bên trong.
Nhưng nếu gặp trường hợp có thêm Inner Class thì bạn phải bỏ thêm tên class đằng trước để dễ phân biệt
VD:

public class MainActivity{
    int x=10;
    class SecondClass{
          int x=1;
          void whichClass(){
                 System.out.println(this.x); //-->1
                 System.out.println(MainActivity.this.x)//-->10
          }
    } 
}

Mình chỉ giải thích khái quát vấn đề thôi. Bạn có thể tìm hiểu thêm ở đây, phần Shadowing
https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html
Ở đó cũng nói về Inner class, Nested class và Anonymous class đều là những thứ bạn sẽ gặp phải trong Android nên nếu bạn chưa biết thì nên tìm hiểu luôn.

1 Like

Em cám ơn anh ạ :slight_smile:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?