Cho đoạn mã sau:
class Test{
public static void main(String args[]){
double d = 12.3;
Decrementer dec = new Decrementer();
dec.decrement(d);
System.out.println(d);
}
}
class Decrementer{
public void decrement(double decMe){
decMe = decMe – 1.0;
}
}
Giá trị in ra của câu lệnh ở dòng thứ 6 là:
A. 12.3
B. -1.0
C. 11.3
D. 0.0
Từ khóa nào trong khai báo phương thức của lớp cho phép chương trình thực hiện đa luồng (multi threads)?
A. synchronized
B. interface
C. native
D. abstract
Từ khóa nào được sử dụng để báo cho chương trình dịch java biết đây là một lớp hằng, không thể kế thừa?
A. protected
B. private
C. final
D. abstract
Đâu là đoạn mã xây dựng lớp NV với yêu cầu sau:
- thuộc tính: hsl
- phương thức: tính lương được nạp chồng theo hai cách, lương không có phụ cấp và lương có phụ cấp ( = hsl * 1500000 hoặc = (hsl+pc) * 1500000
A. public class NV {
float tinhluong( float hsl ) {
return hsl * 1500000; }
float tinhluong( float hsl, float pc) {
return (hsl+pc) * 1500000; }
}
B. public class NV {
float hsl;
float pc;
float tinhluong1( ) {
return hsl * 1500000; }
float tinhluong2( ) {
return (hsl+pc) * 1500000; }
}
C. public class NV {
float hsl, pc;
float luong1, luong2;
float tinhluong( ) {
luong1 = hsl*1500000;
luong2 = (pc+hsl)*1500000;
}
}
D. public class NV {
float hsl;
float tinhluong( ) {
return hsl * 1500000; }
float tinhluong( float pc) {
return (hsl+pc) * 1500000; }
}
Trong trường hợp một phương thức không có giá trị trả về, ta dùng từ khóa gì?
A. Từ khóa Null
B. Từ khóa Default
C. Từ khóa void
D. Không khai báo từ khóa
Trong 3 lớp đối tượng sau thì các lớp nào đáp ứng đặc trưng kế thừa trong lập trình hướng đối tượng: lớp Sách, lớp Ô tô và lớp Tạp chí.
A. Lớp Sách và lớp Ô tô
B. Lớp Tạp chí và lớp Ô tô
C. Tất cả các phương án đều đúng
D. Lớp Sách và lớp Tạp chí
Sử dụng toán tử nào để sinh đối tượng từ lớp cho việc sử dụng, khai thác và xử lý?
A. Toán tử continue
B. Toán tử while
C. Toán tử new
D. Toán tử case
Sau khi một chương trình nguồn java được dịch, phần mở rộng của tệp kết quả là gì?
A. >java
B. .h
C. .class
D. .java
Trong ngôn ngữ java các từ khóa import, for, while, case, return, break và continue, những từ khóa nào cho phép viết cả bằng chữ hoa lẫn chữ thường?
A. Không từ khóa nào.
B. Từ khóa case
C. Từ khóa for và while
D. Từ khóa break, continue
Thành phần nào là thành phần (dưới dạng các hàm) trong đối tượng để mô tả hành vi (behavior) hay khả năng xử lý của đối tượng?
A. Thuộc tính
B. Phương thức
C. Đối tượng
D. Tất cả các phương án đều đúng
Một class muốn thực thi được trong một thread riêng thì phải implements interface nào?
A. Executable
B. Run
C. Runnable
D. Threadable
Một giao diện có thể là giao diện cho bao nhiêu lớp đối tượng có cùng mục đích tương tác?
A. 1 lớp
B. 2 lớp
C. Nhiều lớp
D. 3 lớp
Các phương thức khai báo trong giao diện có thể bao gồm thân (các lệnh trong thân phương thức)?
A. Tùy tình huống.
B. Không thể.
C. Có thể.
Từ khóa nào được dùng để khai báo lớp A là lớp trừu tượng trong java?
A. extends
B. implements
C. virtual
D. abstract
Một giao diện có thể thực thi những phương thức nào?
A. Không phương thức nào.
B. Các phương thức hủy.
C. Các phương thức abstract.
D. Các phương thức tạo.
Từ khóa nào được dùng để khai báo lớp A kế thừa từ lớp B và lớp C trong java?
A. abstract
B. Java không hỗ trợ kiểu đa kế thừa này.
C. extends
D. virtual
Trong hàm tạo bất kỳ của lớp có thể gọi tới các hàm tạo khác của lớp đó hay không?
A. Chỉ gọi được duy nhất hàm tạo không đối của lớp.
B. Có thể gọi tất cả các hàm tạo khác.
C. Chỉ gọi được nhiều nhất 1 hàm tạo khác.
D. Không gọi được hàm tạo khác.
Chọn phát biểu sai:
A. Nếu lớp là final thì có nghĩa là sẽ không có lớp kế thừa từ lớp này.
B. Khi khai báo một thuộc tính final thì phải cung cấp giá trị khởi tạo cho nó.
C. Không thể định nghĩa một thuộc tính vừa là final và static.
D. Bên trong phương thức tĩnh ta chỉ có thể truy cập đến các thành viên tĩnh.
Cho biết lớp B gồm các thành phần gì trong đoạn mã sau:
class A
{
int x,y;
public A(){ x=y=5; }
public int sumA( ){ return x+y; }
}
class B extends A
{
int z;
public B(){ z=7; }
public int sumB( ) { return x+y+z;}
}
A. -Thuộc tính: z,
-Phương thức: sumB( )
B. -Thuộc tính: x, y
-Phương thức: sumA( )
C. -Thuộc tính: x, y, z
-Phương thức: sumA( ), sumB( )
D. -Thuộc tính: x, y, z
-Phương thức: A( ), B( ), sumA( ), sumB( )
Phát biểu “chương trình được chia nhỏ thành các chương trình con riêng rẽ (còn gọi là hàm hay thủ tục) thực hiện các công việc cụ thể trong ứng dụng” nói về phương pháp lập trình nào?
A. Lập trình thủ tục
B. Lập trình hướng đố tượng
C. Lập trình tuyến tính
D. Tất cả các phương án đều đúng