30/09/2018, 17:04

Poll: Core java Fundamentals 1.4

  1. Which three piece of codes are equivalent to line 3?
public interface Foo 
{ 
    int k = 4; /* Line 3 */
}

final int k = 4;
public int k = 4;
static int k = 4;
abstract int k = 4;
volatile int k = 4;
protected int k = 4;

  • A. 1, 2 and 3
  • B. 2, 3 and 4
  • C. 3, 4 and 5
  • D. 4, 5 and 6
Đỗ Trung Quân viết 19:11 ngày 30/09/2018

Có bạn nào trả lời bài này k

kien tran viết 19:04 ngày 30/09/2018

A. 1,2 and 3

Đỗ Trung Quân viết 19:17 ngày 30/09/2018

Why? . Tại sao lại là 1 2 3

kien tran viết 19:20 ngày 30/09/2018

mặc định là public static final , còn 3 cái dưới em chưa nhìn thấy bao giờ

kien tran viết 19:17 ngày 30/09/2018

cuốn SCJP Sun Certification trong chương 1 nó có nói phần này ạ
"All variables defined in an interface must be public, static, and final—
in other words, interfaces can declare only constants, not instance variables. "

Đỗ Trung Quân viết 19:14 ngày 30/09/2018

Đang cày rank nên rep chậm =)))
interface thực chất là 1 class rỗng, bên trong nó chứa method nhưng method này cũng phải rỗng, nó không được phép khai báo biến nhưng nếu là public hay hằng thì được. Giống như em nói.
Vì là interface nên không đc khai báo abstact vs protected, biến volatile cũng là public nhưng nó thuộc dạng mutable có nghĩa là thay đổi được bên trong các thread nên không đc khai báo trong interface.
Đây là mình hiểu theo ý mình. Bạn nào thấy sai edit nhé.
Đáp áp A: 1 2 3 là đúng

kien tran viết 19:16 ngày 30/09/2018

anh ơi, method rỗng chỉ đúng với java 7 trở về trước thôi ạ, từ java 8 có thêm default method và static method rồi ạ

Đỗ Trung Quân viết 19:09 ngày 30/09/2018

Ừ đúng rồi. :D. cái này mình không nhớ

Bài liên quan
0