WorksheetsLTHDT
Total questions: 100
Worksheet time: 50mins
Khi lập trình, bạn thường khai báo các biến (variables). Tên biến (định danh) nào sau đây không hợp lệ?
get-in
_ok
Ho_ten
A92
Để khai báo 1 hằng (constant) trong java, bạn sử dụng từ khóa nào?
final
const
fefine
constant
Khi tạo 1 lớp, thành phần nào không thể thiếu trong lớp?
Không có thành phần nào không thế thiếu
Data
Constructors
Methods
Khi tạo 1 lớp, phát biểu nào sau đây là đúng về constructor?
Bạn có thể không cần tạo bất kỳ constructor nào
Bạn phải tạo 1 constructor
Bạn phải tạo ít nhất 2 constructor mới đáp ứng nhu cầu
Không thể không tạo constructor
Khi xây dựng trong 1 lớp, ta có thể khai báo các objects của lớp. Số lượng objects tạo ra từ 1 lớp là bao nhiêu?
Rất nhiều
Từ 0 - 20 objects
Từ 20 - 50 objects
Từ 50 - 100 objects
Giả sử bạn đã tạo 1 lớp tên là ABC, lớp này 0 có constructor và bạn không cho nó kế thừa bất kỳ lớp nào. Câu lệnh nào sau đây khai báo và tạo 1 đối tượng của lớp ABC
ABC abc = new ABC();
ABC ABC = new ABC();
ABC abc;
ABC abc = new ABC;
Hãy chọn câu thích hợp nhất trong các câu sau về constructor
constructor không có kiểu trả về và có tên trùng với tên lớp
Tên của constructor trùng với tên lớp
constructor không có kiểu trả về
constructor cũng tương tự như method
Cho lớp được tạo như sau:
Biên dịch và chạy ra kết quả: X = 20
Biên dịch bị lỗi
Biên dịch không lỗi, chạy có lỗi
Biên dịch và chạy ra kết quả: X = 10
Phát biểu nào sau đây đúng về tinh chất Overloading?
Trong 1 lớp có các methods giống tên nhưng khác nhau về ds tham số
Trong 2 lớp có 2 methods giống tên nhưng khác nhau về ds tham số, mỗi method nằm trong 1 lớp
Trong 2 lớp có 2 methods giống tên và giống cả ds tham số
Là trường hợp lớp con có 1 method giống 1 method của lớp
Giả sử bạn tạo 1 lớp tên FastClass trong 1 file source code, câu lệnh khau báo lớp nào sau dây là sai?
public synchronized class FastClass{}
protected class FastClass{}
public abstract class FastClass{}
class FastClass extends Object
Biên dịch bị lỗi. Lỗi xảy ra ở dòng 4
Biên dịch không bị lỗi
Biên dịch bị lỗi, Lỗi xảy ra ở dòng 2
Biên dịch bị lỗi, Lỗi xảy ra ở dòng 6
Đóng gói dữ liệu của 1 lớp là kỹ thuật:
Không cho phép bên ngoài truy cập trực tiếp vào dữ liệu
Có thể cho phép bên ngoài truy cập trực tiếp vào dữ liệu
Chỉ cho phép bên ngoài truy cập trực tiếp vào dữ liệu khi đc cho phép
làm tăng mức độ chuyên nghiệp của programmers
Phát biểu nào sau đây về kỹ thuật đóng gói dữ liệu là đúng?
Cho phép truy cập gián tiếp vào dữ liệu thông qua các hàm có đặt lệnh kiểm soát
Chỉ cho phép truy cập gián tiếp vào dữ liệu thông qua các hàm read-only
Chỉ cho phép truy cập gián tiếp vào dữ liệu từ bên trong các lớp con của nó
Chỉ cho phép truy gián tiếp vào dữ liệu từ bên trong lớp
Method nào sau đây khai báo hợp lý?
public void setRange(int range) {}
public void getArrow() {}
public void setBow() {}
public object setBow() {}
1 biến của 1 lớp mà giá trị của nó đc sử dụng cho all các objects (íntance) của lớp đó. Biến đó gọi là biến gi
static
public
local
public long findAverage(int sum, int divisor) {}
public long findAverage(int sum){}
public int average(int sum){}
private void findAverage(int sum){}
Phát biểu nào sau đây đúng về sự kế thừa?
KT là kỹ thuật của all ngôn ngữ lập trình
KT là lớp con chọn lựa sử dụng lại 1 phần của lớp cha
KT là việc tạo lớp con dựa trên lớp cha, sử dụng lại các thành phần có sẵn của lớp cha
KT là lớp con giữ nguyên những gì đã có từ lớp cha
Mục đích cụ thể của việc kế thừa là gì? hãy chọn câu đúng
Sử dụng lại mã nguồn
Tăng khả năng chuyên nghiệp
Theo xu hướng công nghệ
Tối ưu hơn chương trình
Trong kế thừa, các thành phần nào sau đây không thể kế thừa từ lớp cha?
Constructor
Data
method
hàm
Trong nn Java sử dụng loại kiến trúc kế thừa nào?
Đơn KT
Đa KT
Không ràng buộc gì về KT
Phải cài thêm gói phần mềm về KT thì java mới có thể có khả năng KT
Trong java, khi tạo lớp con KT lớp cha, từ khóa nào cần đc sử dụng
extends
implememts
Inheritant
: :
Để gọi constructor của lớp cha ta sử dụng lệnh gì?
super(..)
Gọi đúng tên constructor của lớp cha
Ta k cần gọi, constructor sẽ auto đc gọi
parent(..)
Giả sử ta dùng lệnh super(..) để gọi constructor của lớp cha; Khi đó lệnh super(..) cần đặt ở trong constructor của lớp con là thích hợp?
Ngay dòng đầu tiên
Đặt bất kỳ đâu nếu cần thiết
Dùng cấu trúc if(..) để gọi
Đặt ở dòng cuối cùng
Cho lớp B kế thừa lớp A. Trong lớp A có 1 constructor k tham số. Nếu trong constructor của lớp con k chứa lời gọi tường minh đến constructor của lớp cha thì khi biên dịch, điều gì sẽ xảy ra?
Compiler sẽ auto thêm vào constructor của lớp con lệnh gọi constructor của lớp cha là super()
Báo lỗi biên dịch
Không báo lỗi biên dịch nhưng chương trình k chạy
Kết quả k đoán trước đc
Hello Dad!
Hello Son!
Hello Son!
Hello Son!
Hello Dad!
Hello Dad!Hello Son!
lỗi biên dịch
Hello Dad!
Hello Son!
Hello Son!
Hello Dad!Hello Son!
Hello Dad!
Hello Son!
Hello Dad!Hello Son!
Hello Dad!
Hello Son!
Khai báo dữ liệu mạng nào của lớp cha k thể cho lớp con thừa kế
Khai báo private
Khai báo public
Khai báo protected
Không chỉ định access modifier
Khai báo method dạng nào của lớp cha k thể cho lớp con thừa kế?
Khai báo private
Khai báo protected
Khai báo public
Không chỉ định access modifier
Từ khóa nào dùng để khai báo lớp trừu tượng?
abstract
Abstract
Extends
Implements
Phát biểu nào sau đây là đúng về lớp trừu tượng?
Lớp trừu tượng có thể chứa các thành phần k trừu tượng
Lớp trừu tượng chủ chứa dữ liệu trừu tượng
Lớp trừu tượng chủ chứa method trừu tượng
Lớp trừu tượng k thể chứa các thành phần k trừu
Lớp con của lớp trừu tượng nếu muốn là lớp cụ thể thì phải làm gì?
Phải định nghĩa lại tất cả abstract methods của lớp cha
Phải định nghĩa lại tất cả abstract data của lớp cha
K bắt buộc phải định nghĩa lại tất cả abstract methods của lớp cha
Chỉ cần định nghĩa lại 1 abstract methods của lớp cha
Phát biểu nào sai về abstract method
abstract method có thể nằm trong 1 lớp cụ thể
abstract method là phương thức có dấu ";" cuối dòng khai báo phương thức
abstract method là phương thức được khai báo dùng từ khóa abstract
abstract method là phương thức k có thân
Overriding method là gì?
là trường hợp lớp con thay đổi code trong phương thức kế thừa từ lớp cha
là trường hợp 2 methods khai báo giống nhau nhưng code có khác nhau
là trường hợp lớp con kế thừa method của lớp cha
là trường hợp bổ sung thân method cho abstract method
Final class là loại class gì?
là loại lớp hằng (không thay đổi), tương tự như khai báo biến
Là loại class k cho phép các classes khác kế thừa
là loại lớp mà ta k thể thay đổi dữ liệu của nó
là loại lớp k có thân lớp, chỉ có dòng khai báo lớp
Khi xây dựng lớp A có 2 dữ liệu số nguyên là num01 và num02. Nếu k cho các lớp con của lớp A kế thừa dữ liệu num02 nhưng cho phép kế thừa dữ liệu num01, ta phải làm gì?
Khai báo lớp A là final
Khai báo dữ liệu num01 và num02 là private
Khai báo dữ liệu num02 là private, dữ liệu number1 k khai báo private
khai báo dữ liệu num01 là
K có lỗi
Có 2 lỗi, dòng 6 và dòng 8
Có 1 lỗi ở dòng 8
Có 3 lỗi, ở các dòng 2.3.
Có lỗi. Lỗi ở dòng 8
Có lỗi. Lỗi ở dòng 2
K lỗi
Có lỗi. Lỗi ở dòng 6
Play!
Lỗi biên dịch
Play!Music!
Music!
Music
Song
String
void
Câu nào sau đây về đa kế thừa là đúng
Java cho phép đa KT sử dụng Interfaces
Java cho phép đa KT sử dụng abstract classes
Java cho phép đa KT sử dụng non-abstract classes
Java cho phép đa KT sử dụng bộ công cụ trung
Lệnh nào sao đây dùng để gọi constructor của chính nó trong cùng 1 lớp
that()
super()
this()
construct()
Biên dịch có lỗi. Có 2 dòng bị lỗi
Biên dịch k có lỗi
Biên dịch có lỗi. Có 3 dòng bị lỗi
Biên dịch có lỗi. Có dòng bị lỗi
Khi tạo Interface, ta có thể tạo bao nhiêu constructors
0
1
2
Nhiều
Sau khi xây dựng 1 Interface, ta khai báo và khởi tạo các objects (biến) của nó bằng cách nào
Khởi tạo tương tự như class bth
Khởi tạo dùng từ khóa new
K thể khởi tạo
Khởi tạo thông qua classes
Khi mở 1 IDE (vd: NetBean) để viết code xây dựng 1 Interface. Bạn lưu thành file với mở rộng là gì?
.
.class
.inf
.java
Các methods trong 1 Interface có thể là loại methods gì
Normal method, Abstract method
Abstract method
Normal method
protecred
Để cho 1 class giao tiếp (implement) với interface, ta cần làm gì
Dùng từ khóa interface
Dùng từ khóa extends
Dùng từ khóa inherit
Dùng từ khóa implements
Hãy chọn câu đúng trong các phát biểu sau đây
Interface có thể kế thừa nhiều interface khác
Interface có thể kế thừa tối đa 3 Interface khác
Interface có thể kế thừa class
Interface có thể kế thừa tối đa 5 Interface
Khi cho 1 lớp (normal class) giao tiếp với 1 interface, bạn phải làm gì?
Ta có thể lựa chọn phương thức của interface để định nghĩa lại
Chỉ cần định nghĩa lại 1 phương thức của interface
Phải định nghĩa lại tất cả các phương thức của interface
Không phải định nghĩa lại tất cả các phương thức của 1
Phát biểu nào sau đây đúng khi khai báo dữ liệu trong interface
trong interface, khai báo dữ liệu tương tự khai báo dữ liệu trong class
dữ liệu trong interface khi khai báo có thể k cần gán giá trị
Dữ liệu trong interface là static
dữ liệu trong interface phải được gán giá trị
Cho lớp B kế thừa lớp A và giao tiếp với interface IC; khi đó từ khóa đc sử dụng theo trình tự lần lượt là gì?
extends,
implement, extends
extends, implement
extend, implement
0 lỗi
1 lỗi
2 lỗi
3 lỗi
0 lỗi
1 lỗi
2 lỗi
3 lỗi
Cho interface IA có 3 methods: md1(), md2(), md3(). Bạn xây dựng lớp A cho giao tiếp với IA. Trong lớp A bạn định nghĩa lại 2 methods của IA là md1() và md2(); Khi đó bạn khai báo lớp A sd từ khóa gì sau đây là thích hợp
[no access modifier]
protected
public
abstract
Bạn đc yêu cầu xây dựng lớp A và giao tiếp với 2 interface đã có là IB và IC. Cú pháp khai báo nào sau đây hợp lệ
public class A implements IB, IC{}
public class A implements IB implements IC{}
public class A extends IB, IC{}
public class A extends IB extends IC{}
Bạn đã có 1 interface IA. Bạn cần tạo interface IB kế thừa IA. Cú pháp khai báo nào sau đây hợp lệ
interface IA implements IB{}
interface IA extends IB{}
interface IB extends IA{}
interface IB implements {}
Theo thứ tự phạm vi từ rộng đến phạm vi hẹp
protected, public, [default], private
public, [default], protected, private
public, protected, [default], private
public, protected, private, [default]
Hãy chọn câu đúng về phạm vi truy cập của từ khóa private áp dụng cho member của class
Bên trong class, bên trong package chứa class
Chỉ bên trong class
Bên trong class, bên trong package chứa class, bên trong các classes con của nó
Ở bất cứ đâu trong
Hãy chọn câu đúng về phạm vi truy cập của từ khóa [default] áp dụng cho member của class
Bên trong class
Bên trong class, bên trong package chứa class, bên trong các classes con
Ở bất cứ đâu trong project
Bên trong class và bên trong package chứa class
Hãy chọn câu đúng về phạm vi truy cập của từ khóa protected áp dụng cho member của class
Chỉ bên trong class
Bên trong class và bên trong package chứa class
Ở bất cứ đâu trong
Bên trong class, bên trong package chứa class, bên trong các classes con của nó
Hãy chọn câu đúng về phạm vi truy cập của từ khóa public áp dụng cho member của class?
Chỉ bên trong class
Bên trong class và bên trong package chứa class
Ở bất cứ đâu trong project
Bên trong class, bên trong package chứa class, bên trong các classes
Lỗi ở dòng 4
Lỗi ở dòng 3
Lỗi ở dòng 1
0 có
0 có lỗi
Lỗi ở dòng 1
Lỗi ở dòng 4
Lỗi ở dòng
0 có lỗi
Lỗi ở dòng 1
Lỗi ở dòng 4
Lỗi ở dòng 3
Khi xây dựng 1 lớp, thành phần nào sau đây k thể thiếu
Data
Method
Constructor
không có thành phần nào là k thể thiếu
Count = 1
Num = 2
Count = 2
Num = 1
Count = 1
Num = 1
Count =
Num = 2
Khi viết 1 chương trình java chạy ở chế độ Console, ta cần 1 hàm main() là điểm bắt đầu chạy chương trình, Phát biểu nào sau đây về hàm main() là đúng?
hàm main() phải đặt trong 1 lớp
hàm main() phải đặt ngoài các lớp
hàm main() có thể đặt bất kỳ đâu
hàm main() phải đặt trong lớp quan trọng
1 file chương trình tên là B.java có 4 lớp đc khai báo như sau:
class A{}
class B{}
class C{}
class D{}
Cho biết kết quả biên dịch và chạy chương trình
Biên dịch lỗi
Biên dịch k lỗi, chạy k lỗi
Biên dịch k lỗi, chạy báo lỗi
Biên dịch k lỗi, chạy k lỗi nhưng No
Biên dịch và chạy tốt. Xuất kết quả:
Static
Static
Lỗi biên dịch tại dòng 6
Lỗi biên dịch tại dòng 6
Biên dịch và chạy tốt. Xuất kết quả:
Static
Biên dịch bị lỗi trong lớp
Biên dịch bị lỗi trong lớp Vatthe
Biên dịch k lỗi nhưng khi chạy bị lỗi
Biên dịch lỗi
Khi xây dựng lớp Hinh_hoc là lớp cơ sở và cho các lớp: Hinh_vuong, Hinh_tron, Hinh_CN, Hinh_TG kế thừa. Nhận thấy các lớp này đều có phương thức tính tinhDienTich(..). Tuy nhiên cách tính diện tích trong mỗi hình có khác nhau, do đó code của pt tinhDienTich(..) trong mỗi lớp dẫn xuất là khác nhau. Điều này thể hiện tính gì
đóng gói
đa hình
trừu tượng
ảo
khi tạo lớp XeHoi, bạn tạo 1 số phương thức ứng với hành động xe. Những phương thức với ý nghĩa nào sau đây là thích hợp
khởi động, chuyển bánh, rẽ phải, rẽ trái, di chuyển, quay đầu, lùi sau
Khởi động, di chuyển, rẽ phải, rẽ trái, lùi sau
khởi động, chuyển bánh, rẽ phải, rẽ trái, di chuyển, lùi sau
không có phương thức nào thích
khi xây dựng 1 lớp, bạn cần phải xây dựng constructor khi nào
khi cần gán giá trị ban đầu cho các thành phần dữ liệu của lớp
khi cần truyền tham số cho hàm thành viên của lớp
khi cần gán giá trị ban đầu cho các phương thức của lớp
khi lớp đc sử dụng trong hàm main()
thư viện nào sau đây trong java chứa lớp Scanner dùng để nhập dữ liệu từ bàn phím
java.tool
java.util
java.net
java.
trong lớp Scanner, method nextLine() thích hợp dùng để nhập dữ liệu kiểu gì
Số nguyên
Số thực
Chuỗi
Luận lý
Phát biểu nào sau đây đúng về thành phần khai báo private trong 1 lớp
Không cho phép truy xuất từ bên ngoài của lớp nhưng cho phép các lớp trong cùng package truy xuất tới
Cho phép truy xuất từ bên ngoài lớp
Không cho phép truy xuất từ bên ngoài của lớp nhưng cho phép các lớp kế thừa truy xuất tới
Không cho phép truy xuất từ bên ngoài của lớp chỉ có các phương thức bên trong lớp mới có thể truuy xuất đc
Biên dịch k có lỗi
Biên dịch lỗi tại dòng 1
Biên dịch lỗi tại dòng 3
Biên dịch lỗi tại dòng
Biên dịch k có lỗi
Biên dịch k lỗi và output: AAA
Biên dịch k có lỗi nhưng chạy lỗi
Biên dịch k lỗi chạy k lỗi nhưng k có
Cho lớp trừu tượng A. Lớp B kế thừa lớp A; Hãy chọn phát biểu đúng về lớp B:
Lớp B k là lớp trừu tượng, cũng k là lớp cụ thể
Lớp B phải là lớp cụ thể
Lớp B phải là lớp trừu tượng
Lớp B có thể là lớp trừu tượng, có thể là lớp cụ thể
khi xây dựng 1 abstract class, members nào sau đây k đc sử dụng
abstract data
abastract method
data
Pb nào sau đây là sai khi nói về abstract methods
abstract methods có thể là static
abstract methods k có thân (body)
abstract methods có dấu chấm phẩy cuối dòng khai báo method
abstract methods k thể đặt trong 1 lớp bth (normal class)
Pb nào sau đây là sai khi nói về abstract class
abstract class có thể đc khai báo
abstract class có thể chứa data, methods
abstract class có thể đc tạo bằng từ khóa new
abstract class có thể chứa data, abstract
hãy chọn pb sai trong các câu sau đây
abstract class có thể đc khai báo
abstract class phải chứa non-abstract methods
abstract class có thể có lớp cha
abstract class phải chứa abstract methods
1 class có thể kế thừa bao nhiêu interface
0 interface
1 interface
Từ 2 đến 10 interface
rất nhiều interface
khi LT java ta có thể sử dụng 1 IDE để viết dễ viết code hãy chọn pb đúng
tất cả dữ liệu phải khai báo bên trong lớp
dữ liệu có thể khai báo độc lập bên ngoài hay trong lớp
dữ liệu toàn cục có thể khai báo bên ngoài lớp
dữ liệu chỉ khai báo bên trong hàm
trong các dòng khai báo methods sau đây, dòng khai báo methods nào k thích hợp
public void setAge(){..}
public void getAge(){..}
public void setName(String newName){..}
public int addNumbers(int a, int b){..}
Output: 1
Output: 2
Run-time Error
Compile-time Error
Output: 1
Output: 2
Compile-time Error
Run-time Error
Compile-time Error
No output
Two
Rin-time Error
Compile-time Error
No output
Output: Two
Run-time Error
Compile-time Error
No outout
0
Run-time Error
Compile-time
No output
Output: int constructor
Output: long constructor
Output: long constructor
Compiler-time Error
Run-time Error
Output: 121
Trong lớp A
Trong lớp B
Trong lớp C
Trong cả lớp A và lớp B
Lỗi biên dịch tại dòng: #1
Lỗi biên dịch tại dòng: #2
No output
Output: Base:print
hãy chọn cú pháp đúng để xuất nd "Hello World" trong java
ccho("Hello World");
System.out.println("Hello World")
System.print("Hello World");
Console.WriteLine("Hello World")
Dòng nào sau đây là comment (ghi chú) trong java code
#This is a comment
// This is a comment
/#This is a comment
<--This is a comment-->
Run-time Error
Output: 20
Compile-time Error
Output:
Pb nào sau đây là đúng về sự kế thừa trong java
Không thể KT 1 final class trong java
Từ khóa "extends" dùng để mở rộng 1 lớp trong java
Không thể mở rộng nhiều lớp trong java
Private members của lớp cha có thể đc truy cập trong lớp con
