Các bài tập java từ cơ bản đến nâng cao năm 2024

Chúng ta đã được tiếp cận đến những bài tập Java cơ bản ở những bài viết trước. Tại bài viết này mình sẽ chia sẻ thêm cho các bạn những bài tập Java cơ bản đến nâng cao cho những người mới tiếp cận với khái niệm lập trình hướng đối tượng nhé!

\>> Xem ngay Tài liệu Java Core giúp bạn “Nâng Cấp” kỹ năng lập trình

Bài tập Java cơ bản đến nâng cao

Đề bài

Dưới đây mình có một số bài tập về OOP để các bạn có thể luyện tập thêm kiến thức về hướng đối tượng. Các bạn tham khảo nhé.

Bài tập 1:

  • Viết một chương trình khai báo một lớp Square có thuộc tính là chiều rộng và có các phương thức sau:
    • Hàm tạo không tham số.
    • Hàm tạo có 1 tham số.
    • Get/set cho các thuộc tính.
    • Phương thức tính diện tích hình vuông.
    • Phương thức tính chu vi hình vuông.

Bài tập 2:

  • Viết chương trình khai báo một lớp Phương trình bậc 2 với các thuộc tính là a, b, c với các phương thức sau:
    • Hàm tạo không tham số.
    • Hàm tạo có 3 tham số.
    • Get/set cho 3 thuộc tính.
    • Phương thức tính delta.
    • Phương thức tính nghiệm phương trình.

Bài tập 3:

  • Viết chương trình khai báo một lớp trừu tượng Shape có hai thuộc tính là color và filled.
  • Xây dựng các lớp Circle và Rectangle kế thừa lớp Shape trong đó:
    • Lớp Circle có thuộc tính radius:
      • Có ba phương thức khởi tạo. Phương thức khởi tạo mà không cần đối số đầu vào sẽ đặt giá trị mặc định cho radius là 1.0.
      • Có các getter và setter cho cả ba phương thức.
      • Có phương thức getArea và getPerimeter trả về diện tích và chu vi của hình.
    • Lớp Rectangle có hai thuộc tính width và height:
      • Có ba phương thức khởi tạo. Phương thức khởi tạo mà không cần đối số đầu vào sẽ đặt giá trị mặc định cho width và length là 1.0.
      • Có các getter và setter cho tất cả các thuộc tính.
      • Có phương thức getArea và getPerimeter trả về diện tích và chu vi của hình.

Lời giải

Sau khi các bạn đã thử sức làm xong các bài tập nhỏ nhỏ ở phía bên trên thì hãy cùng xem lại các bài tập đó với lời giải của mình nhé

Java là một ngôn ngữ lập lập trình, được phát triển bởi Sun Microsystem vào năm 1995, là ngôn ngữ kế thừa trực tiếp từ C/C++ và là một ngôn ngữ lập trình hướng đối tượng. Với tiêu chí hàng đầu của Ngôn ngữ Lập trình Java là “Write Once, Run Anywhere” (Viết một lần, chạy mọi nơi)

Trong series bao gồm:

  • Sách, video và tài liệu học Java
  • Lộ trình học Java(Java Core) từ cơ bản tới nâng cao
  • Bài tập với đầy đủ bài giải chi tiết

👉 Giới thiệu mọi thức về Cafedev tại đây

Phần mở đầu Sách, video và tài liệu 0.0 Kho sách Java 0.1 Nơi đăng ký nhận ebook lập trình, ebook công nghệ thông tin tại đây 0.2 Khoá học online Java cho người mới 0.2 Video học Java(Đang cập nhật...) Phần 1 Giới thiệu 1.0 Giới thiệu về về java 1.1 Chương trình Java “Hello, World!” 1.2 Java JDK, JRE và JVM là gì? 1.3 Biến và các kiểu dữ liệu (cơ bản) 1.4 Tìm hiểu các Toán tử(Operator) 1.5 Tìm hiểu cách Input and Output trong Java 1.6 Biểu thức, câu lệnh và khối câu lệnh trong Java 1.7 Comments trong java Phần 2 Flow Control trong Java 2.0 Câu lệnh if, if…else trong Java 2.1 Câu lệnh Switch trong Java 2.2 Vòng lặp for trong Java 2.3 Vòng lặp for-each trong Java (Vòng lặp for nâng cao) 2.4 Vòng lặp while và do … while trong Java 2.5 Câu lệnh break trong Java 2.6 Câu lệnh continue trong Java Phần 3 Mảng (Array) trong Java 3.0 Mảng trong Java 3.1 Mảng đa chiều trong Java 3.2 Sao chép mảng trong Java Phần 4 Lập trình hướng đối tượng trong Java 4.0 Đối tượng và class trong Java 4.1 Phương thức trong Java 4.2 Hàm tạo (constructor) trong Java 4.3 Quyền truy cập(Access Modifier) trong Java 4.4 Từ khóa “this” trong Java 4.5 Từ khoá static(tĩnh) trong Java 4.6 Biểu thức lambda trong Java 4.7 Kỹ thuật đệ quy(recursion) trong Java 4.8 Toán tử instanceof trong Java 4.9 Tính kế thừa(Inheritance) trong Java 4.10 Ghi đè(Overriding) phương thức trong Java 4.11 Từ khóa Super trong Java 4.12 Class trừu tượng(Abstract) và phương thức trừu tượng trong Java 4.13 Interface trong Java 4.14 Tính đa hình trong Java 4.15 Tính đóng gói trong Java 4.16 Class lồng bên trong Class trong Java 4.17 Singleton trong Java 4.18 Enum trong Java 4.19 Chuỗi trong Java 4.20 Từ khoá final trong Java 4.21 Lớp static lồng nhau trong java 4.22 Lớp ẩn danh trong Java 4.23 Hàm tạo enum trong Java 4.24 Giá trị Chuỗi với enum trong Java 4.25 Phản ánh, phản xạ, phản chiếu trong Java Phần 5 List trong Java 5.0 Tìm hiểu về collections framework trong Java 5.1 Collection interface trong Java 5.2 List trong Java 5.3 Class ArrayList trong Java 5.4 Class Vector trong Java 5.5 Class stack trong Java 5.6 LinkedList trong Java Phần 6 Queue trong Java 6.0 Queue interface trong Java 6.1 PriorityQueue trong Java 6.2 Deque Interface trong Java 6.3 BlockingQueue trong Java 6.4 ArrayBlockingQueue trong Java 6.5 ArrayDeque trong java 6.6 LinkedBlockingQueue trong Java Phần 7 Map trong Java 7.0 Map interface trong Java 7.1 Hashmap trong Java 7.2 LinkedHashMap trong Java 7.3 WeakHashMap trong Java 7.4 EnumMap trong Java 7.5 TreeMap trong Java 7.6 ConcurrentMap Interface trong Java 7.7 NavigableMap Interface trong Java 7.8 ConcurrentHashMap trong Java 7.9 SortedMap Interface trong Java Phần 8 Set trong Java 8.0 Set Interface trong Java 8.1 Class Hashset trong Java 8.2 Enumset trong Java 8.3 LinkedHashset trong Java 8.4 SortedSet Interface trong Java 8.5 NavigableSet Interface trong Java 8.6 TreeSet trong Java 8.7 Các thuật toán trong collection của Java 8.8 Iterator Interface trong Java 8.9 ListIterator Interface trong Java Phần 9 Xử lý ngoại lệ(exceptions) trong Java 9.0 Giới thiệu về Ngoại lệ(exceptions) trong Java 9.1 Xử lý ngoại lệ trong Java 9.2 Try...catch trong Java 9.3 throw-throws trong Java 9.4 Bắt nhiều ngoại lệ trong Java 9.5 try-with-resource trong Java 9.6 Chú thích(Annotations) trong Java 9.7 Các loại chú thích(Annotation) Java 9.8 Ghi Log(Logging) trong Java 9.9 Assertions trong Java Phần 10 I/O Streams trong Java 10.0 Giới thiệu I/O Streams trong Java 10.1 InputStream Class trong Java 10.2 Lớp OutputStream trong Java 10.3 Lớp FileInputStream trong Java 10.4 Lớp FileOutputStream trong Java 10.5 Lớp ByteArrayInputStream trong Java 10.6 Lớp ByteArrayOutputStream trong Java 10.7 Lớp ObjectInputStream trong Java 10.8 Lớp ObjectOutputStream trong Java 10.9 Lớp BufferedInputStream trong Java 10.10 Lớp BufferedOutputStream trong Java 10.11 Lớp PrintStream trong Java Phần 11 Reader/Writer trong Java 11.0 Lớp Writer trong Java 11.1 Lớp Reader trong Java 11.2 Lớp InputStreamReader trong Java 11.3 Lớp OutputStreamWriter trong Java 11.4 Lớp FileReader trong Java 11.5 Lớp FileWriter trong Java 11.6 Lớp BufferedReader trong Java 11.7 Lớp BufferedWriter Java 11.8 Lớp StringReader trong Java 11.9 Lớp StringWriter trong Java 11.10 Lớp PrintWriter trong Java Phần 12 Các bài viết hay khác với Java 12.0 Lớp Scanner trong Java 12.1 Ép kiểu(Casting) trong java 12.2 Generics trong Java 12.3 Lớp File trong Java Phần 13 Tổng hợp các bài tập cơ bản bạn nên làm khi học Java(Full đáp án hay nhất)

Lưu ý: Dưới đây là danh sách các bài tập của C/C++ nhưng bạn có thể viết nó bằng Java, từ đó nâng cao trình độ cũng như kỹ năng lập trình với Java của bạn. Chúc bạn thành công.