You are on page 1of 29

Ý nào sai khi nói đến khả năng truy cập thành phần tĩnh?

Select one:
A. Hàm thành phần tĩnh có thể được gọi mà không cần qua đối tượng
B. Các hàm thành phần đều có thể truy cập vào thành phần tĩnh
C. Hàm thành phần tĩnh chỉ có thể truy cập đến thành phần dữ liệu tĩnh
D. Đối tượng cần phải được khởi tạo trước khi gọi hàm thành phần tĩnh

Question 2
Complete
Marked out of 1.00

Flag question

Question text

Trong ngôn ngữ lập trình Java, để tạo ra liên kết động cần những yếu tố nào:

Select one or more:


A. Phân cấp thừa kế
B. Có định nghĩa chồng hàm trong một lớp.
C. Sử dụng biến đối tượng của lớp cha để tham chiếu đến các đối tượng thuộc lớp con
D. Hàm thành phần phải được định nghĩa lại ở lớp con

Question 3
Complete
Marked out of 1.00

Flag question

Question text
Trong Java, Cú pháp để khai báo một lớp là:

Select one:
A. class: <tên lớp> {
<các thuộc tính>
<các phương thức>
};
B. class <tên lớp> {
<các phương thức>
<các thuộc tính>
}
C. class <tên lớp> {
<các thuộc tính>
<các phương thức>
};

Question 4
Complete
Marked out of 1.50

Flag question

Question text

Cho 3 file java trong cùng một project như sau:


Class1.java :
package pack1;
public class Class1{}
Class2.java:
package pack2;
public class Class2{}
Main.java:
package pack1;
public class Main{}
Câu hỏi: nếu muốn sử dụng Class2 và Class1 trong lớp Main thì cần khai báo import như thế
nào?

Select one:
A. import pack.*
B. import pack1,pack2;
C. import pack2;
D. import pack2.Class2;

Question 5
Complete
Marked out of 1.50

Flag question

Question text

Trong ngông ngữ Java, phát biểu nào sau đây là đúng về phạm vi truy cập protected:

Select one:
A. Các thành phần sau từ khóa này có phạm vi truy cập chỉ bên trong gói và ngoài gói
thông qua các lớp con.
B. Các thành phần sau từ khóa này có phạm vi truy cập bất kỳ.
C. Các thành phần sau từ khóa này được bảo vệ và không thể truy cập từ bên ngoài, chỉ có
thể truy cập bởi các hàm thành phần của lớp.
D. Các thành phần sau từ khóa này được bảo vệ và không thể truy cập từ bên ngoài, muốn
truy cập từ bên ngoài phải thông qua các lớp con.

Question 6
Complete
Marked out of 1.00
Flag question

Question text

Cú pháp nào sau đây khai báo hàm trừu tượng:

Select one:
A. abstract <kiểu> tên_hàm(danh sách tham số);
B. void tên_hàm;
C. <kiểu> tên_hàm(danh sách tham số)=0;
D. abstract <kiểu> tên_hàm(danh sách tham số){};

Question 7
Complete
Marked out of 1.50

Flag question

Question text

Cho đoạn chương trình sau:

Scanner scanner = new Scanner(System.in);

System.out.println("First Name:");
scanner.nextLine();
String firstname =

System.out.println("Last Name:");
scanner.nextLine();
String lastname =

System.out.println("Birth year:");
scanner.nextInt();
int year =

System.out.println("Average score:");
scanner.nextFloat();
double score =

Hãy chọn các câu lệnh đọc giá trị phù hợp nhất với biến dữ liệu:

Question 8
Complete
Marked out of 1.50

Flag question

Question text

Cho các lớp sau:

class Error1 extends Exception{}

class Error2 extends Error1{}

class Error3 extends Error2{}

class MyClass {

public void makeError1() throws Error1{

throw new Error1();

public void makeError2() throws Error2{

throw new Error2();


}

public void makeError3() throws Error2{

throw new Error3();

Trong cấu trúc try…catch bẫy lỗi khi sử dụng MyClass, hãy thiết lập đúng các mệnh đề

catch để có thể bắt hết được các lỗi trong phần try:

try{

MyClass myclass=new MyClass();

myclass.makeError1();

myclass.makeError2();

myclass.makeError3();

}
Error1 ex
catch( ){

ex.printStackTrace();

}
Error2 ex
catch( ){

ex.printStackTrace();

}
Error3 ex
catch( ){

ex.printStackTrace();
}

Question 9
Not answered
Marked out of 1.50

Flag question

Question text

Cho đoạn chương trình sau:


abstract class Employee{
String name;
int age;
public Employee(String name, int age) {
this.name = name;
this.age = age;
}
abstract public void doWork();
}
class Developer extends Employee{
public Developer(String name, int age) {
super(name, age);
}
@Override
public void doWork() {
System.out.println("I am "+name+", "+age+" years old and I am a coder");
}
}
Trong lớp demo có hàm main như sau:
public class demo {
public static void main(String[] args) {
//TODO
dep.doWork();
}
}
Hãy viết vào vị trí //TODO duy nhất một lệnh sao cho thể hiện được tính đa hình và in kết
quả ra như sau:
I am An, 20 years old and I am a coder

Answer:

Question 10
Complete
Marked out of 1.00

Flag question

Question text

Hình mẫu thiết kế Factory có mục đích chính là gì:

Select one:
A.
Tách phần trừu tượng và thực thi thành 2 nhánh thừa kế khác nhau

B. Làm cầu nối cho việc sử dụng chức năng của lớp này trong giao diện của lớp khác
C. Cung cấp phương thức khởi tạo đối tượng cho các lớp con
D. Cung cấp đối tượng duy nhất của lớp

Question 11
Complete
Marked out of 1.00
Flag question

Question text

Trong cú pháp lệnh ném ngoại lệ throw đối_tượng_ngoại_lệ;thì kiểu của đối tượng ngoại lệ
có thể là gì?

Select one:
A. Tùy ý
B. Số thực
C. Dẫn xuất của lớp Throwable
D. Số nguyên

Question 12
Complete
Marked out of 1.50

Flag question

Question text

Cho các lớp như sau:

class Item{}

class LineItem extends Item{

public void print(){}

class Box{

Item item;

public Box(Item item) {


this.item = item;

public Item getItem(){

return item;

Hãy sắp xếp các câu lệnh trong hàm main() đẻ chương trình có thể chạy được

public class demo {

public static void main(String[] args) {


Item item=new LineItem();

LineItem line_item=(LineItem)item_inner;

Item item_inner=box.getItem();

Box box=new Box(item);

line_item.print();

Question 13
Complete
Marked out of 1.50
Flag question

Question text

Cho lớp Generic như sau:

class Bag<T>{

ArrayList<T> items;

public Bag(ArrayList<T> items) {

this.items = items;

public int numberOfItems(){

return items.size();

public void show(){

for(T item :items){

System.out.println(item.toString());

Trong hàm main của lớp demo có sử dụng lớp Bag:

public class demo {


public static void main(String[] args) {
ArrayList<Integer> list=new ArrayList();

list.add("An");

list.add("Binh");
Bag b=new Bag("An", "Binh");

b.show();

Hãy hoàn thiện đoạn code trên để nó in ra chính xác kết quả như sau:

An

Binh

Question 14
Complete
Marked out of 1.50

Flag question

Question text

Trong ngông ngữ Java, đáp nào nào đúng dùng để khai bao hàm thiết lập của lớp Student

Select one or more:


A. Student(int a, int b)
{
//todo
}
B. public Student()
{
//todo
}
C. public void Student()
{
//todo
}
D. private Student(int a, int b){
//todo
}

Question 15
Complete
Marked out of 1.50

Flag question

Question text

Cho 2 lớp:
class Exception01 extends Exception {
}
class Class01 {
public void Funcion01(int a) throws TimeoutException {
if(a<10) throw new TimeoutException();
}
public void Funcion02(int b) throws Exception01 {
if (b>10){
throw new Exception01 ();
}
}
}
Giá trị của biến b bằng bao nhiêu khi thực hiện xong đoạn chương trình sau:
int b=0;
try {
int a=15;
Class01 c1 = new Class01();
c1.Funcion01(a);
c1.Funcion02(a);

} catch (TimeoutException tx) {


b=100;
} catch (Exception01 ex)
{
b=10;
}

10
Answer:

Question 16
Complete
Marked out of 1.00

Flag question

Question text

Các mệnh đề catch trong cấu trúc try…catch được đem khớp với ngoại lệ theo thứ tự nào?

Select one:
A. Thứ tự ngẫu nhiên
B. Từ trên xuống dưới
C. Mệnh đề catch có tham số khớp với ngoại lệ nhất
D. Từ dưới lên trên

Question 17
Complete
Marked out of 1.50

Flag question

Question text

Cho 2 lớp giao diện là BirdAction chứa hàm trừu tượng fly() và AnimalAction chứa hàm trừu

tượng run(), định nghĩa lớp Unicorn thực thi cả 2 giao diện trên. Hãy hoàn thiện đoạn

chương trình dưới đây để đáp ứng yêu cầu đề bài:


interface
BirdAction{
void fly(){}

}
interface
AnimalAction{
void run();

}
implements BirdAction,AnimalAction
class Unicorn {

@Override

public void fly() {

System.out.println("I can fly");

}
@Override

public void run() {

System.out.println("I can run");

Question 18
Complete
Marked out of 1.50

Flag question

Question text

Cho đoạn chương trình sau:


String str1 = "Ha Noi";
String str2 = "Dai hoc Xay Dung";
String str3 = 2022+"-"+str1+"-"+str2;
System.out.print(str3);
Hãy viết chính xác kết quả in ra output của đoạn code trên

2020-Ha Noi-Dai hoc Xay Dung


Answer:

Question 19
Complete
Marked out of 1.00
Flag question

Question text

Kỹ thuật nào dưới đây là một bộ phận của Lập trình hướng đối tượng?

Select one:
a. Đa luồng
b. Che giấu thông tin
c. Đa nhiệm
d. Phân tán

Question 20
Complete
Marked out of 2.00

Flag question

Question text

Đoạn chương trình sau thể hiện hình mẫu thiết kế nào:
public class Vidu {
public static void main(String[] args) {
Shape redCircle = new Circle(100,100, 10, new RedCircle());
redCircle.draw();
}
}
interface DrawAPI {
public void drawCircle(int radius, int x, int y);
}
class RedCircle implements DrawAPI {
public void drawCircle(int radius, int x, int y) {
System.out.println("radius: " + radius + ", x: " + x + ", " + y + "]");
}
}

abstract class Shape {


protected DrawAPI drawAPI;

protected Shape(DrawAPI drawAPI){


this.drawAPI = drawAPI;
}
public abstract void draw();
}
class Circle extends Shape {
private int x, y, radius;

public Circle(int x, int y, int radius, DrawAPI drawAPI) {


super(drawAPI);
this.x = x;
this.y = y;
this.radius = radius;
}
public void draw() {
drawAPI.drawCircle(radius,x,y);
}
}

Select one:
A. Adapter pattern
B. Bridge pattern
C. Factory pattern
D. Singleton Pattern

Question 21
Complete
Marked out of 1.00

Flag question

Question text

Sự khác nhau giữa liên kết tích tụ và liên kết kết cấu giữa các lớp trong sơ đồ lớp là gì?

Select one:
A. Liên kết tích tụ biểu diễn quan hệ thành phần mạnh hơn kết cấu
B.
Liên kết tích tụ là một dạng đặc biệt của liên kết kết hợp, liên kết kết cấu là dạng đặc biệt của
thừa kế.

C. Liên kết tích tụ biểu diễn quan hệ một-phần-của còn liên kết kết cấu biểu diễn quan hệ
cha-con
D. Trong liên kết kết cấu, nếu xóa đối tượng tổng thể thì đối tượng thành phần cũng bị xóa
theo . Trong liên kết tích tụ nếu xóa đối tượng tổng thể thì đối tượng thành phần vẫn có thể
được dùng tiếp

Question 22
Complete
Marked out of 1.00

Flag question

Question text
Đáp án nào không phải là kiểu dữ liệu cơ bản của ngôn ngữ lập trình Java

Select one or more:


A. double
B. float
C. String
D. Interger

Question 23
Complete
Marked out of 1.50

Flag question

Question text

Cho đoạn chương trình sau:

int a[][]={{1,2,3},{5,7},{2,6,8}};
int j=0; j<a[i].length;j ++
for( ){
int i=0; i<a.length(); i++
for( ){

System.out.print(a[i][j]+" ");

System.out.println();

Và output của đoạn chương trình trên là:

123

57
268

Question 24
Complete
Marked out of 1.00

Flag question

Question text

Cho 2 lớp:
public class Person {
private long id;
private String name;
public void display(){
System.out.println(id+","+name);
}
}
public class Employee extends Person{
private float salary;
public void display(){
super.display();
System.out.println("has salary:"+this.salary+"$");
}
Những tính chất nào của phương pháp lập trình hướng đối tượng được thể hiện trong đoạn
chương trình sau:
Person person= new Employee(1,"An",1000);
person.display();
Select one or more:
A. Tính thừa kế
B. Tính trừu tượng
C. Tính bao đóng
D. Tính Đa hình

Question 25
Complete
Marked out of 1.00

Flag question

Question text

Trong ngôn ngữ Java, Cú pháp để định nghĩa Generic Classes là:

Select one:
A. class name<T1, T2,…,Tn> {…}
B. class name(T1, T2,…,Tn) {…}
C. class name extends T1, T2,…,Tn {…}
D. class name T1, T2,…,Tn {…}

Question 26
Complete
Marked out of 1.00

Flag question

Question text

Câu lệnh khai báo nào không được chấp nhận trong ngôn ngữ lập trình java

Select one:
A. int a1, a2, a3;
B. float _a1;
C. float 1a;
D. int $a1, $a2;

Question 27
Complete
Marked out of 1.00

Flag question

Question text

Cho định nghĩa 2 lớp:


public class Person {
public Person() {
//todo
}
}

public class Employee extends Person{
//todo
}
Đáp án nào dùng để gọi đến hàm tạo của lớp Person trong lớp Employee

Select one:
A. super();
B. Person();
C. Tất cả đều sai.
D. this();

Question 28
Complete
Marked out of 1.00
Flag question

Question text

Một lớp có thể định nghĩa tối đa bao nhiêu hàm thiết lập?

Select one:
A. 2
B. 0
C. Không giới hạn
D. 1

Question 29
Complete
Marked out of 1.00

Flag question

Question text

Trong hình mẫu Singleton, đối tượng của lớp được đảm bảo là duy nhất nhờ đặc điểm của
yếu tố gì?

Select one:
A. Thành phần tĩnh
B. Tính đa hình
C. Phạm vi truy cập
D. Tính thừa kế

Question 30
Complete
Marked out of 1.00

Flag question

Question text

Trong Java, khả năng Chồng hàm thành phần là gì?

Select one:
A. Cho phép nhiều hàm trong các lớp khác nhau có thể trùng tên nhau.
B. Cho phép nhiều hàm trong một lớp có thể trùng tên nhau nhưng phải khác danh sách
tham số (số lượng, kiểu, thứ tự tham số).
C. Tất cả đều sai.
D. Cho phép nhiều hàm trong một lớp có thể trùng tên nhau và phải giống nhau về danh
sách tham số (số lượng, kiểu, thứ tự tham số).

Question 31
Complete
Marked out of 1.00

Flag question

Question text

Phát biểu nào sai về lớp giao diện (interface)

Select one:
A. Một lớp có thể thừa kế từ nhiều lớp giao diện.
B. Sử dụng từ khóa extends khi muốn thừa kế từ lớp giao diện
C. Không thể khai báo đối tượng thuộc lớp giao diện.
D. Chỉ chứa các hàm không có phần định nghĩa.
E. Tất cả các thành phần đều có phạm vi mặc định là public

Question 32
Complete
Marked out of 1.00
Flag question

Question text

Mã nguồn của ngôn ngữ java có đuôi là:

Select one:
A. cpp
B. jav
C. javac
D. Tất cả đều sai

Question 33
Complete
Marked out of 1.00

Flag question

Question text

Sự khác nhau giữa đặc tả Usecase và sơ đồ hoạt động là gì?

Select one:
A.

Đặc tả usecase cho người phát triển đọc còn sơ đồ hoạt động dành cho khách hàng đọc

B. Đặc tả Usecase không thể mô tả nghiệp vụ còn sơ đồ hoạt động thì có thể.
C.

Đặc tả Usecase không thể mô tả được luồng rẽ nhánh còn sơ đồ hoạt động thì có thể
D. Đặc tả Usecase chỉ có thể mô tả luồng hoạt động trong một Usecase còn sơ đồ hoạt
động có thể mô tả luồng nghiệp vụ trong nhiều usecase

Question 34
Complete
Marked out of 1.00

Flag question

Question text

Ý nghĩa của phương thức printStackTrace() trong lớp Throwable là:

Select one:
A. Trả về tên lớp và mô tả lỗi
B. In ra kết quả hàm toString() dọc theo danh sách hàm trong stack
C. Tất cả đều sai
D. Trả về mô tả lỗi

Question 35
Complete
Marked out of 1.50

Flag question

Question text

Cho 3 file java có nội dung như sau:

Class1.java:

package pack1;
public
class Class1 {

int a;
public int b;

Class2.java:

package pack2;

public class Class2 {

private int v;
public
int getV(){

return v;

Demo.java:

public class demo {

public static void main(String[] args) {

Class1 c1=new Class1();

//lấy giá trị a của c1;

int a=c1.a;

Class2 c2=new Class2();

//lấy giá trị v của c2;

int v=c2.getV();

}
Hãy đặt các phạm vi phù hợp để có thể truy cập như trong hàm main của lớp demo.

You might also like