Ngôn ngữ java là gì. Đặc điểm của ngôn ngữ Java

Giới thiệu

Tác phẩm này được dành cho một trong những ngôn ngữ lập trình hứa hẹn nhất hiện nay - ngôn ngữ Java. Không hề phóng đại, công nghệ có tên “Java” có thể được coi là cuộc cách mạng trong ngành phát triển phần mềm.

Việc sắp xếp có thể được thực hiện bằng các ngôn ngữ lập trình khác như PHP, C++, v.v. Chỉ là nó mang lại nhiều lợi nhuận hơn trong Java. Các chi tiết được thảo luận dưới đây. Điều mới lạ nằm ở chỗ chương trình sắp xếp trước đây chưa được triển khai bằng ngôn ngữ này và theo cách hiểu này.

Để hoàn thành nhiệm vụ, một thuật toán viết chương trình đã được đề xuất. Thuật toán này sau đó đã được triển khai trong Java.

Mô tả ngôn ngữ lập trình Java

Các tính năng chung của Java

Ngôn ngữ Java được chọn để viết chương trình sắp xếp. Java là ngôn ngữ lập trình hướng đối tượng được Sun Microsystems phát triển từ năm 1991 và phát hành chính thức vào ngày 23/5/1995. Ban đầu, ngôn ngữ lập trình mới được gọi là Oak (James Gosling) và được phát triển cho thiết bị điện tử tiêu dùng, nhưng sau đó được đổi tên thành Java và bắt đầu được sử dụng để viết các applet, ứng dụng và phần mềm máy chủ.

Ngôn ngữ lập trình Java không giống bất kỳ ngôn ngữ nào khác hiện có. Nó được thiết kế để làm việc dễ dàng hơn trên các máy tính trên WWW thông qua trình duyệt. Ngày nay, mọi máy tính đều có trình duyệt. Đổi lại, mỗi trình duyệt đều hỗ trợ Java. Điều này có nghĩa là bạn có thể xem các tài liệu được lưu trữ trên toàn thế giới và bằng cách nhấp vào liên kết, hãy kích hoạt chương trình Java sẽ được truyền qua mạng và chạy trên máy tính của bạn.

Một trong những ưu điểm chính của ngôn ngữ Java là tính độc lập của nó với nền tảng và loại máy tính mà chương trình được thực thi trên đó. Do đó, cùng một mã có thể chạy trong các hệ điều hành Windows, Linux, FreeBSD, Solaris, Apple Mac, v.v. Điều này trở nên rất quan trọng khi các chương trình được tải xuống qua Internet và được sử dụng trên các nền tảng khác nhau. Ngôn ngữ lập trình Java có thể hoạt động không chỉ với các văn bản và đồ họa tĩnh mà còn với các đối tượng động khác nhau.

Một ưu điểm khác không kém phần quan trọng của Java là sự tương đồng lớn với ngôn ngữ lập trình C++. Vì vậy, những lập trình viên đã quen với cú pháp của C và C++ sẽ dễ dàng thành thạo Java.

Hơn nữa, Java là ngôn ngữ hoàn toàn hướng đối tượng, thậm chí còn hơn cả C++. Tất cả các thực thể trong ngôn ngữ Java đều là đối tượng, ngoại trừ một số kiểu nguyên thủy, chẳng hạn như số.

Điều quan trọng nữa là việc phát triển các chương trình không có lỗi trong Java dễ dàng hơn nhiều so với C++.

Vấn đề là các nhà phát triển ngôn ngữ Java của Sun đã tiến hành phân tích cơ bản các chương trình trong C++. Những “điểm nghẽn” của mã nguồn được phân tích dẫn đến xuất hiện những lỗi khó phát hiện. Do đó, người ta đã quyết định thiết kế ngôn ngữ Java với khả năng tạo các chương trình có thể che giấu những lỗi phổ biến nhất.

Để làm điều này, những điều sau đây đã được thực hiện:

Các nhà phát triển đã loại bỏ khả năng phân bổ và giải phóng bộ nhớ một cách rõ ràng.

Ví dụ: bộ nhớ trong Java được giải phóng tự động bằng cách thu thập rác. Hóa ra là lập trình viên được bảo hiểm khỏi các lỗi phát sinh do sử dụng bộ nhớ không đúng cách.

giới thiệu mảng thực sự và cấm con trỏ.

Bây giờ các lập trình viên không thể xóa dữ liệu khỏi bộ nhớ do sử dụng con trỏ không đúng.

khả năng gây nhầm lẫn giữa toán tử gán và toán tử so sánh đẳng thức đã được loại bỏ. Theo quy luật, vấn đề với dấu "=" rất thường dẫn đến các lỗi logic trong C và C++ không dễ phát hiện. Đặc biệt là trong các chương trình lớn.

Đa kế thừa được loại trừ hoàn toàn. Nó được thay thế bằng một khái niệm mới - giao diện, ý tưởng được mượn từ ngôn ngữ Objective C.

Giao diện cung cấp cho người lập trình hầu hết mọi thứ anh ta có thể nhận được từ đa kế thừa, đồng thời tránh được sự phức tạp phát sinh khi quản lý hệ thống phân cấp lớp.

Tính năng ngôn ngữ hoặc Java là gì


Nếu bạn hỏi Java là gì, thì bạn có thể nói về Java như một ngôn ngữ hướng đối tượng, có mục đích chung, trông rất giống với C và C++, nhưng dễ sử dụng hơn và cho phép bạn tạo các chương trình đáng tin cậy hơn. Thật không may, định nghĩa này sẽ không cung cấp cho bạn sự hiểu biết đầy đủ về Java. Một định nghĩa chi tiết hơn được Sun Microsystems đưa ra và cũng có liên quan, mặc dù nó đã được công bố vào năm 2000:

Java là ngôn ngữ lập trình đơn giản, hướng đối tượng, hỗ trợ web, thông dịch, đáng tin cậy, an toàn, trung lập về kiến ​​trúc, di động, hiệu suất cao, đa luồng, năng động.
Chúng ta hãy xem xét từng định nghĩa riêng lẻ:

Java là một ngôn ngữ đơn giản. Java ban đầu được mô phỏng theo C và C++, đã loại bỏ một số thành phần có thể gây nhầm lẫn. Con trỏ, kế thừa nhiều triển khai và nạp chồng toán tử là một số tính năng của C/C++ không phải là một phần của Java. Hàm này là tùy chọn trong C/C++ nhưng được yêu cầu trong Java - nó là một trình thu gom rác tự động giải phóng các đối tượng và mảng.

Java là một ngôn ngữ hướng đối tượng. Trọng tâm hướng đối tượng trong Java cho phép các nhà phát triển làm việc để điều chỉnh Java để giải quyết một vấn đề, thay vì buộc chúng ta phải thao tác vấn đề để đáp ứng các ràng buộc về ngôn ngữ. Điều này khác với ngôn ngữ có cấu trúc như C. Ví dụ: trong khi Java cho phép bạn tập trung vào việc lưu các đối tượng tài khoản thì C yêu cầu bạn phải suy nghĩ riêng về việc tiết kiệm số dư tài khoản (chẳng hạn như số dư) và các hành vi (chẳng hạn như nhập và kết luận).

Java cho phép bạn làm việc với mạng. Thư viện mạng mở rộng của Java giúp bạn dễ dàng xử lý Giao thức Internet (TCP/IP) cũng như các giao thức mạng như HTTP (Giao thức truyền siêu văn bản) và FTP (Giao thức truyền tệp). Với sự trợ giúp của các thư viện, nhiệm vụ tạo kết nối mạng được đơn giản hóa. Ngoài ra, các chương trình Java có thể truy cập các đối tượng qua mạng TCP/IP bằng cách sử dụng Bộ định vị tài nguyên thống nhất (URL) một cách dễ dàng giống như các tệp nằm trên máy tính cục bộ.

Java là một ngôn ngữ thông dịch. Trong quá trình thực thi chương trình Java, nó được thực thi gián tiếp trên nền tảng cơ bản (chẳng hạn như Windows hoặc Linux) thông qua một máy ảo (là phần mềm đại diện cho nền tảng giả định) và môi trường thời gian chạy liên quan của nó. Máy ảo dịch mã byte thành các lệnh Java (hướng dẫn và dữ liệu liên quan) dành riêng cho nền tảng bằng cách sử dụng tính năng thông dịch. Sau đó, máy ảo sẽ thực thi các hướng dẫn này trên một nền tảng cụ thể. Việc phiên dịch giúp việc gỡ lỗi các chương trình Java bị hỏng trở nên dễ dàng hơn vì có nhiều thông tin hơn tại thời điểm biên dịch.

Java là một ngôn ngữ đáng tin cậy. Các chương trình Java phải đáng tin cậy vì chúng được sử dụng trong các ứng dụng tiêu dùng và quan trọng, từ đầu phát Blu-ray hoặc hệ thống điều khiển không khí trong ô tô. Khách hàng và máy chủ của ngân hàng được viết bằng ngôn ngữ này. Các tính năng ngôn ngữ giúp Java trở nên mạnh mẽ bao gồm các khai báo, kiểm tra kiểu trùng lặp khi biên dịch và thời gian chạy (để ngăn chặn các vấn đề về phiên bản không khớp), mảng có kiểm tra giới hạn tự động và không có con trỏ.

Một khía cạnh khác về độ tin cậy của Java là các vòng lặp phải được điều khiển bằng các biểu thức boolean thay vì các biểu thức số nguyên, trong đó 0 là sai và giá trị khác 0 là đúng. Ví dụ: Java không cho phép vòng lặp kiểu C như trong while (x) x++; vì vòng lặp có thể không kết thúc như mong đợi. Thay vào đó, bạn phải cung cấp một biểu thức boolean một cách rõ ràng, ví dụ như trong while (x != 10) x++; (Nghĩa là vòng lặp sẽ chạy cho đến khi x bằng 10).

Java là một ngôn ngữ an toàn. Các chương trình Java được sử dụng trong môi trường mạng/phân phối. Vì các chương trình Java có thể di chuyển và chạy trên các nền tảng khác nhau nên điều quan trọng là phải bảo vệ các nền tảng đó khỏi mã độc có thể phát tán vi-rút nhằm đánh cắp thông tin thẻ tín dụng hoặc thực hiện các hoạt động độc hại khác. Các tính năng của ngôn ngữ Java hỗ trợ độ tin cậy (chẳng hạn như truyền con trỏ) hoạt động với các tính năng bảo mật như hộp cát Java và các mô hình bảo mật mật mã khóa công khai. Cùng với nhau, các tính năng bảo vệ này chống lại vi-rút và mã độc hại khác sẽ ngăn chặn sự hỗn loạn tàn phá một nền tảng không bị nghi ngờ.

Về lý thuyết, Java rất an toàn. Trong thực tế, nhiều lỗ hổng khác nhau đã được phát hiện và khai thác. Do đó, Sun Microsystems và Oracle sau đó tiếp tục phát hành các bản cập nhật bảo mật trong thời điểm hiện tại.

Java là một ngôn ngữ trung lập về kiến ​​trúc(tên khác là nền tảng độc lập). Mạng kết nối các nền tảng với kiến ​​trúc khác nhau dựa trên các bộ vi xử lý và hệ điều hành khác nhau. Java tạo mã byte lệnh độc lập với nền tảng được diễn giải cho từng nền tảng (sử dụng Máy ảo Java).

Java là một ngôn ngữ di động. Kiến trúc trung lập thúc đẩy tính di động. Thư viện Java cũng thúc đẩy tính di động. Khi cần, họ cung cấp các kiểu kết nối mã Java với các khả năng dành riêng cho nền tảng theo cách di động nhất có thể.

Java là một ngôn ngữ hiệu suất cao. Việc giải thích đưa ra một mức độ hiệu suất thường là quá đủ. Những người viết chương trình tùy chỉnh bằng C++ có thể tranh luận ở đây, nhưng trên thực tế, Java tăng năng suất theo từng phiên bản.

Java là một ngôn ngữ đa luồng. Để nâng cao hiệu quả của các chương trình cần thực hiện đồng thời nhiều tác vụ, Java hỗ trợ khái niệm luồng. Ví dụ: một chương trình vận hành giao diện đồ họa người dùng (GUI) trong khi chờ đầu vào từ kết nối mạng sẽ sử dụng một luồng khác để thực hiện chờ, thay vì sử dụng luồng GUI mặc định cho cả hai tác vụ. Điều này cho phép bạn làm việc với giao diện đồ họa mà không khiến nó bị treo. Đồng bộ hóa luồng trong Java cho phép các luồng giao tiếp với nhau một cách an toàn mà không làm hỏng chúng.

Java là một ngôn ngữ động. Vì giao tiếp giữa mã chương trình và thư viện diễn ra linh hoạt trong thời gian chạy nên không cần phải liên kết chúng một cách rõ ràng. Do đó, khi một chương trình hoặc một trong các thư viện của nó phát triển (ví dụ: để sửa lỗi hoặc cải thiện hiệu suất), nhà phát triển chỉ cần phân phối chương trình hoặc thư viện đã cập nhật. Mặc dù kết quả của hành vi động yêu cầu ít mã hơn khi xảy ra thay đổi phiên bản nhưng chính sách phân phối này cũng có thể dẫn đến xung đột phiên bản. Ví dụ: nhà phát triển xóa loại lớp khỏi thư viện hoặc đổi tên nó. Khi một công ty phân phối thư viện cập nhật, các chương trình hiện có phụ thuộc vào loại lớp có thể không còn hoạt động. Để giải quyết vấn đề này, Java hỗ trợ một loại giao diện, giống như một hợp đồng giữa hai bên.

Vì vậy, chúng tôi đã kiểm tra các tính năng của ngôn ngữ Java. Nếu bạn cần viết chương trình bằng ngôn ngữ này, làm bài tập hoặc bằng tốt nghiệp, bạn có thể liên hệ với tôi - [email được bảo vệ]- Tôi chắc chắn sẽ giúp bạn.

Java - một ngôn ngữ từ Sun microsystems. Ban đầu nó được phát triển như một ngôn ngữ để lập trình các thiết bị điện tử, nhưng sau đó bắt đầu được sử dụng để viết các ứng dụng phần mềm máy chủ. Các chương trình Java là đa nền tảng, nghĩa là chúng có thể chạy trên mọi hệ điều hành.

Cơ bản về lập trình Java

Java, là ngôn ngữ hướng đối tượng, tuân theo các nguyên tắc cơ bản của OOP:

  • di sản;
  • đa hình;
  • đóng gói.

Ở trung tâm của Java, cũng như trong các OYA khác, là một đối tượng và một lớp với các hàm tạo và thuộc tính. Tốt hơn là bạn nên bắt đầu học ngôn ngữ lập trình Java không phải từ các tài nguyên chính thức mà từ các sách hướng dẫn dành cho người mới bắt đầu. Những hướng dẫn như vậy mô tả chi tiết các khả năng và cung cấp các ví dụ về mã. Những cuốn sách như “Ngôn ngữ lập trình Java cho người mới bắt đầu” giải thích chi tiết các nguyên tắc và tính năng cơ bản của ngôn ngữ được đặt tên.

Đặc điểm

Mã ngôn ngữ lập trình Java được dịch sang mã byte và sau đó được thực thi trên JVM. Việc chuyển đổi sang mã byte được thực hiện bằng Javac, Jikes, Espresso, GCJ. Có các trình biên dịch dịch ngôn ngữ C sang mã byte Java. Do đó, một ứng dụng C có thể chạy trên mọi nền tảng.

Cú pháp Java được đặc trưng như sau:

  1. Tên lớp phải bắt đầu bằng chữ in hoa. Nếu tên bao gồm một số từ thì từ thứ hai phải bắt đầu bằng chữ in hoa.
  2. Nếu một số từ được sử dụng để tạo thành một phương thức thì từ thứ hai trong số chúng phải bắt đầu bằng chữ in hoa.
  3. Quá trình xử lý bắt đầu bằng phương thức main() - nó là một phần của mọi chương trình.

Các loại

Ngôn ngữ lập trình Java có 8 kiểu nguyên thủy. Chúng được trình bày dưới đây.

  • Boolean là kiểu logic chỉ chấp nhận hai giá trị là true và false.
  • Byte là loại số nguyên nhỏ nhất, có kích thước 1 byte. Nó được sử dụng khi làm việc với các tập tin hoặc dữ liệu nhị phân thô. Có phạm vi từ -128 đến 127.
  • Short có phạm vi từ -32768 đến 32767 và được sử dụng để biểu thị các số. Kích thước của biến loại này là 2 byte.
  • Int cũng là viết tắt của số, nhưng kích thước của nó là 4 byte. Nó thường được sử dụng để làm việc với dữ liệu số nguyên và byte và short đôi khi được thăng cấp thành int.
  • Long được sử dụng cho số nguyên lớn. Các giá trị có thể có nằm trong khoảng từ -9223372036854775808 đến 9223372036854775807.
  • Float và double được sử dụng để biểu thị các giá trị phân số. Sự khác biệt của chúng là float thuận tiện khi không yêu cầu độ chính xác cao ở phần phân số của số.
  • Double hiển thị tất cả các ký tự sau dấu phân cách ".", trong khi float chỉ hiển thị các ký tự đầu tiên.
  • Chuỗi là kiểu nguyên thủy được sử dụng phổ biến nhất để xác định chuỗi.

Lớp và đối tượng

Các lớp và đối tượng đóng một vai trò quan trọng trong việc học ngôn ngữ lập trình Java cho người mới bắt đầu.

Một lớp định nghĩa một khuôn mẫu cho một đối tượng; nó nhất thiết phải có các thuộc tính và phương thức. Để tạo nó, hãy sử dụng từ khóa Class. Nếu nó được tạo trong một tệp riêng thì tên của lớp và tệp phải giống nhau. Bản thân tên bao gồm hai phần: tên và phần mở rộng.Java.

Trong Java, bạn có thể tạo một lớp con sẽ kế thừa các phương thức của lớp cha. Từ mở rộng được sử dụng cho việc này:

  • lớp class_name mở rộng superclass_name ();

Hàm tạo là một thành phần của bất kỳ lớp nào, ngay cả khi nó không được chỉ định rõ ràng. Trong trường hợp này, trình biên dịch tạo nó một cách độc lập:

  • lớp công khai Lớp( public Class())( ) public Class(Tên chuỗi)( ))

Tên của hàm tạo giống với tên của lớp theo mặc định, nó chỉ có một tham số:

  • Public Puppy(Tên chuỗi)

Đối tượng được tạo từ một lớp bằng toán tử new():

  • Điểm p = Điểm mới()

Nó nhận tất cả các phương thức và thuộc tính của lớp, với sự trợ giúp của nó, nó tương tác với các đối tượng khác. Một đối tượng có thể được sử dụng nhiều lần dưới các biến khác nhau.

    Điểm p = Điểm mới()

    lớp HaiPoints (

    public static void main(String args) (

    Điểm p1 = Điểm mới();

    Điểm p2 = Điểm mới();

    Biến đối tượng và đối tượng là các thực thể hoàn toàn khác nhau. Biến đối tượng là tài liệu tham khảo. Họ có thể trỏ đến bất kỳ biến nào thuộc loại không nguyên thủy. Không giống như C++, việc chuyển đổi kiểu của chúng được quy định chặt chẽ.

    Trường và phương thức

    Các trường là tất cả các biến liên quan đến một lớp hoặc đối tượng. Theo mặc định, chúng là cục bộ và không thể được sử dụng trong các lớp khác. Để truy cập các trường, hãy sử dụng toán tử “.”

    • tên lớp.biến

    Bạn có thể xác định các trường tĩnh bằng từ khóa tĩnh. Các trường như vậy là cách duy nhất để lưu trữ các biến toàn cục. Điều này là do thực tế là Java không có biến toàn cục.

    Đã triển khai khả năng nhập biến để có quyền truy cập từ các gói khác:

    • nhập tên lớp tĩnh;

    Phương thức là một chương trình con cho các lớp mà nó được khai báo. Được mô tả ở cùng cấp độ với các biến. Nó được chỉ định như một hàm và có thể thuộc bất kỳ loại nào, bao gồm cả void:

    • lớp Điểm(int x, y;

      void init(int a, int b) (

    Trong ví dụ trên, lớp Point có số nguyên x và y, một phương thức init(). Các phương thức, giống như các biến, được truy cập bằng cách sử dụng toán tử "."

    • Point.init();

    Thuộc tính init không trả về bất cứ thứ gì nên nó thuộc loại void.

    Biến

    Trong hướng dẫn ngôn ngữ lập trình Java, các biến chiếm một vị trí đặc biệt. Tất cả các biến đều có một loại cụ thể, nó xác định vị trí cần thiết để lưu trữ các giá trị, phạm vi các giá trị có thể có và danh sách các thao tác. Trước khi các giá trị có thể được thao tác, các biến được khai báo.

    Một số biến có thể được khai báo cùng một lúc. Dấu phẩy được sử dụng để liệt kê chúng:

    • int a, b, c;

    Việc khởi tạo xảy ra sau hoặc trong khi khai báo:

    int a = 10, b = 10;

    Có một số loại:

    • biến cục bộ (cục bộ);
    • Biến thể hiện;
    • biến tĩnh (static).

    Các biến cục bộ được khai báo trong các phương thức và hàm tạo; chúng được tạo khi các biến sau được chạy và hủy sau khi hoàn thành. Đối với họ, việc chỉ định các công cụ sửa đổi quyền truy cập và kiểm soát mức độ sẵn có là bị cấm. Chúng không hiển thị bên ngoài khối được khai báo. Trong Java, các biến không có giá trị ban đầu nên bắt buộc phải được gán trước khi sử dụng lần đầu.

    Các biến thể hiện phải được khai báo bên trong lớp. Chúng được sử dụng làm phương thức nhưng chỉ có thể được truy cập sau khi đối tượng được tạo. Biến bị hủy khi đối tượng bị hủy. Các biến thể hiện, không giống như các biến cục bộ, có các giá trị mặc định:

    • số - 0;
    • logic - sai;
    • liên kết là null.

    Các biến tĩnh được gọi là biến lớp. Tên của chúng bắt đầu bằng ký tự viết hoa và được chỉ định bởi bộ sửa đổi tĩnh. Chúng được sử dụng như các hằng số tương ứng, một bộ xác định từ danh sách sẽ được thêm vào chúng:

    • cuối cùng;
    • riêng tư;
    • công cộng

    Chúng được khởi chạy khi bắt đầu chương trình và bị hủy sau khi dừng thực thi. Cũng giống như các biến thể hiện, chúng có các giá trị tiêu chuẩn được gán cho các biến trống. Các số có giá trị bằng 0, các biến boolean có giá trị sai và các tham chiếu đối tượng ban đầu là null. Các biến tĩnh được gọi như sau:

    • ClassName.VariableName.

    Người thu gom rác

    Trong hướng dẫn "Ngôn ngữ lập trình Java cho người mới bắt đầu", phần thu thập rác tự động là thú vị nhất.

    Trong Java, không giống như ngôn ngữ C, không thể xóa một đối tượng khỏi bộ nhớ theo cách thủ công. Với mục đích này, một phương pháp loại bỏ tự động đã được triển khai - trình thu gom rác. Với cách xóa truyền thống thông qua null, chỉ có tham chiếu đến đối tượng bị xóa và chính đối tượng đó cũng bị xóa. Có các phương pháp buộc thu gom rác, mặc dù chúng không được khuyến khích sử dụng trong công việc bình thường.

    Mô-đun tự động xóa các đối tượng không sử dụng hoạt động ở chế độ nền và được khởi chạy khi chương trình không hoạt động. Để xóa các đối tượng khỏi bộ nhớ, chương trình sẽ dừng lại; sau khi giải phóng bộ nhớ, hoạt động bị gián đoạn sẽ được tiếp tục.

    sửa đổi

    Có nhiều loại sửa đổi khác nhau. Ngoài những phương thức xác định phương thức truy cập, còn có các công cụ sửa đổi phương thức, biến và lớp. Các phương thức được khai báo là riêng tư chỉ có sẵn trong lớp được khai báo. Các biến như vậy không thể được sử dụng trong các lớp và hàm khác. Công khai cho phép truy cập vào bất kỳ lớp học nào. Nếu bạn cần lấy lớp Public từ một gói khác, trước tiên bạn phải nhập nó.

    Công cụ sửa đổi protected có tác dụng tương tự như public - nó mở quyền truy cập vào các trường của lớp. Trong cả hai trường hợp, các biến có thể được sử dụng trong các lớp khác. Nhưng công cụ sửa đổi công khai hoàn toàn có sẵn cho tất cả mọi người và công cụ sửa đổi được bảo vệ chỉ có sẵn cho các lớp kế thừa.

    Công cụ sửa đổi được sử dụng khi tạo phương thức là tĩnh. Điều này có nghĩa là phương thức được tạo tồn tại độc lập với các thể hiện của lớp. Công cụ sửa đổi cuối cùng không kiểm soát quyền truy cập mà thay vào đó cho biết không thể thao tác thêm các giá trị của đối tượng. Nó cấm thay đổi phần tử mà nó được chỉ định.

    Cuối cùng cho các trường khiến không thể thay đổi giá trị đầu tiên của biến:

      public static void mthod(String args) (

      Tên int cuối cùng = 1;

      int Name = 2;// sẽ báo lỗi

    Các biến có sửa đổi cuối cùng là hằng số. Chúng thường chỉ được viết bằng chữ in hoa. CamelStyle và các phương pháp khác không hoạt động.

    Cuối cùng cho các phương thức biểu thị việc cấm thay đổi một phương thức trong lớp kế thừa:

      khoảng trống cuối cùng myMethod() (

      System.out.printIn(“Xin chào thế giới”);

    Final cho các lớp có nghĩa là bạn không thể tạo lớp con cháu:

      lớp công khai cuối cùng Lớp (

    Tóm tắt - công cụ sửa đổi để tạo các lớp trừu tượng. Bất kỳ lớp trừu tượng và phương thức trừu tượng nào đều có mục đích được mở rộng hơn nữa trong các lớp và khối khác. bổ nghĩa thoáng qua yêu cầu máy ảo không xử lý biến đã cho. Trong trường hợp này, nó sẽ không được lưu. Ví dụ: tạm thời int Name = 100 sẽ không được lưu, nhưng int b sẽ được lưu.

    Nền tảng và phiên bản

    Các họ ngôn ngữ lập trình Java hiện có:

    • Phiên bản tiêu chuẩn.
    • Phiên bản doanh nghiệp.
    • Phiên bản vi mô.
    • Thẻ.

    1. SE là ứng dụng chính, được sử dụng rộng rãi để tạo các ứng dụng tùy chỉnh cho mục đích sử dụng cá nhân.
    2. EE là một bộ thông số kỹ thuật để phát triển phần mềm doanh nghiệp. Chứa nhiều tính năng hơn SE nên được sử dụng ở quy mô thương mại trong các doanh nghiệp vừa và lớn.
    3. ME - được thiết kế cho các thiết bị có nguồn điện và bộ nhớ hạn chế, chúng thường có kích thước màn hình nhỏ. Những thiết bị như vậy là điện thoại thông minh và PDA, máy thu truyền hình kỹ thuật số.
    4. Thẻ - được thiết kế cho các thiết bị có tài nguyên tính toán cực kỳ hạn chế, chẳng hạn như thẻ thông minh, thẻ SIM, ATM. Vì những mục đích này, mã byte, yêu cầu nền tảng và các thành phần thư viện đã được thay đổi.

    Ứng dụng

    Các chương trình được viết bằng ngôn ngữ lập trình Java có xu hướng chậm hơn và chiếm nhiều RAM hơn. Một phân tích so sánh giữa ngôn ngữ Java và C cho thấy C có năng suất cao hơn một chút. Sau nhiều thay đổi và tối ưu hóa máy ảo Java, hiệu suất của nó đã được cải thiện.

    Được sử dụng tích cực cho các ứng dụng Android. Chương trình được biên dịch thành mã byte không chuẩn và được thực thi trên máy ảo ART. Android Studio được sử dụng để biên dịch. IDE này của Google là IDE chính thức để phát triển Android.

    Microsoft đã phát triển triển khai máy ảo Java MSJVM của riêng mình. Nó có những khác biệt đã phá vỡ khái niệm cơ bản về đa nền tảng - không có hỗ trợ cho một số công nghệ và phương pháp, có những tiện ích mở rộng không chuẩn chỉ hoạt động trên nền tảng Windows. Microsoft đã phát hành ngôn ngữ J#, cú pháp và hoạt động tổng thể của ngôn ngữ này rất giống với Java. Nó không tuân theo đặc điểm kỹ thuật chính thức và cuối cùng đã bị xóa khỏi Bộ công cụ dành cho nhà phát triển Microsoft Visual Studio tiêu chuẩn.

    Ngôn ngữ và môi trường lập trình Java

    Việc phát triển phần mềm được thực hiện trong các IDE sau:

    1. NetBeans IDE.
    2. IDE Eclipse.
    3. Ý tưởng IntelliJ.
    4. JDeveloper.
    5. Java dành cho iOS.
    6. Geany.

    JDK được Oracle phân phối dưới dạng bộ công cụ phát triển Java. Bao gồm một trình biên dịch, thư viện tiêu chuẩn, tiện ích và hệ điều hành. Môi trường phát triển tích hợp hiện đại dựa vào JDK.

    Thật thuận tiện khi viết mã bằng ngôn ngữ lập trình Java trong Netbeans và Eclipse IDE. Đây là những môi trường phát triển tích hợp miễn phí, phù hợp với mọi nền tảng Java. Cũng được sử dụng để lập trình bằng Python, PHP, JavaScript, C++.

    IntelliJ IDE của Jetbrains được phân phối thành hai phiên bản: miễn phí và thương mại. Hỗ trợ viết mã bằng nhiều ngôn ngữ lập trình; có các plugin của bên thứ ba từ các nhà phát triển triển khai nhiều ngôn ngữ hơn.

    JDeveloper là một sự phát triển khác của Oracle. Được viết hoàn toàn bằng Java nên nó hoạt động trên mọi hệ điều hành.

Và việc tạo website ngày càng trở nên phổ biến và thu hút được sự quan tâm của đông đảo mọi người. Ngay cả một người không được giáo dục đặc biệt cũng có thể bắt đầu phát triển các chương trình; điều chính yếu là mong muốn và mong muốn học hỏi những tài liệu mới và thực hành liên tục.

Lựa chọn học tập

Bắt đầu học lập trình từ đâu? Có một số cách để nắm vững tài liệu mới trong lĩnh vực này. Giáo viên riêng sẽ chỉ cho bạn cách bắt đầu học lập trình từ đầu và dạy bạn các khía cạnh quan trọng của mã xây dựng. Tuy nhiên, phương pháp này khá tốn kém nên các phương pháp giảng dạy sau chủ yếu được sử dụng:

  1. Các khóa học chuyên ngành. Chi phí của họ thấp hơn nhiều so với các bài học từ một gia sư cá nhân. Điều đáng chú ý là nhiều nhà tuyển dụng phản ứng tích cực với sự sẵn có của nhiều loại chứng chỉ hoàn thành khóa đào tạo tại các học viện máy tính. Hãy chú ý đến các khóa học của các công ty nổi tiếng thế giới Microsoft và Cisco.
  2. Các khóa học miễn phí từ xa. Có một số lượng rất lớn các dịch vụ trên Internet mà bạn có thể xem các khóa học từ Oxford, Harvard và các tổ chức giáo dục nổi tiếng khác trên thế giới. Ngoài ra còn có các nền tảng đặc biệt để đào tạo kỹ năng lập trình thực tế. Đọc thêm về học tập từ xa và các dịch vụ Internet hữu ích trong bài viết.
  3. Tự học. Bắt đầu học lập trình từ đầu ở đâu nếu bạn không có kế hoạch đăng ký các khóa học và tiêu tiền? Trong trường hợp này, cách dễ nhất là tự học. Bạn nên bắt đầu học bằng cách đọc những điều cơ bản, đừng đi sâu vào lý thuyết mà hãy bắt đầu thực hành ngay, vì chỉ trong quá trình tạo chương trình, bạn mới có được những kỹ năng cần thiết.

Sau khi chọn phương án đào tạo phù hợp với mình, bạn nên quyết định về lĩnh vực chủ đề, vì lập trình có khá nhiều ngành khác nhau.

Làm thế nào để chọn đúng hướng?

Trực tiếp phụ thuộc vào loại phần mềm bạn sẽ tạo trong tương lai:

Nếu mức lương là yếu tố quan trọng nhất đối với bạn, hãy hướng sự chú ý của bạn đến thị trường việc làm. Ngày nay, nhu cầu nhiều nhất là các nhà phát triển chuyên về các ngôn ngữ Java, C#, ASP.NET, C++.

Ngôn ngữ cấp thấp và cấp cao. Sự khác biệt và ứng dụng

Người ta tin rằng tất cả các ngôn ngữ lập trình đều được chia thành cấp cao và cấp thấp. Mã cấp thấp được máy tính xử lý dễ dàng hơn nhưng phải mất nhiều thời gian để viết và đòi hỏi nhiều kiến ​​thức về miền hơn. Các ngôn ngữ như vậy (ví dụ: hợp ngữ) được sử dụng để viết phần mềm cho chip kỹ thuật số và vi điều khiển. Chúng không thuận tiện lắm cho việc học lập trình từ đầu. Các dịch vụ và tài liệu hữu ích từ các tác giả nổi tiếng thế giới được đưa ra ở phần sau của bài viết sẽ cho bạn biết nơi bắt đầu viết chương trình đầu tiên của mình.

Các ngôn ngữ cấp cao dễ sử dụng hơn nhiều vì chúng sử dụng các thư viện tích hợp để đơn giản hóa và trực quan hóa mã. Hầu hết các phần mềm hiện đại được viết bằng ngôn ngữ cấp cao.

Lập trình từ đầu: bắt đầu ứng dụng từ đâu?

Quá trình tạo chương trình di động cho phép các lập trình viên làm việc với các công cụ mới nhất và kết quả là kiếm được một số tiền kha khá thông qua việc kiếm tiền. Trước tiên, bạn cần chọn trang web nơi bạn sẽ làm việc:

  1. Chợ ứng dụng Google Play. Kho ứng dụng dành cho người dùng hệ điều hành Android. Hệ điều hành này có tỷ lệ người dùng lớn nhất trên thị trường. Ngôn ngữ Java và C/C++ được sử dụng để phát triển ứng dụng và trò chơi. Phổ biến nhất là các ứng dụng nhắn tin, ứng dụng khách mạng xã hội, lưu trữ đám mây và trò chơi.
  2. Cửa hàng Windows Mobile. Cửa hàng này đang nhanh chóng trở nên phổ biến cùng với điện thoại thông minh của Microsoft. Ở các nước CIS, hầu hết người dùng thích máy tính bảng dựa trên nền tảng Windows Phone. Lập trình ứng dụng cho một cửa hàng như vậy giúp bạn kiếm được nhiều tiền hơn từ việc kiếm tiền, bởi vì, không giống như Android, hầu hết tất cả các chương trình trong cửa hàng Windows đều được phân phối trên cơ sở trả phí.
  3. Cửa hàng ứng dụng. Một nền tảng sinh lợi khác để phát triển (ngôn ngữ - Objective-C). Quá trình tạo chương trình cho thiết bị Apple yêu cầu môi trường phát triển được cài đặt sẵn có tên Xcode. Bước tiếp theo là học lập trình Objective-C từ đầu. Cuốn sách “Học C cho Mac” của David Mark sẽ cho bạn biết nên bắt đầu viết mã từ đâu. Phiên bản thứ hai."

ngôn ngữ Java

Hầu hết các nhà phát triển chuyên nghiệp khuyên bạn nên bắt đầu kiến ​​thức lập trình bằng ngôn ngữ Java. Nó rất dễ học và đồng thời có nhu cầu trên thị trường. Hãy sử dụng những lời khuyên dưới đây nếu bạn quyết định học lập trình từ đầu. Bắt đầu phát triển Java từ đâu?

Java là ngôn ngữ lập trình hướng đối tượng cấp cao cần thiết để phát triển hầu hết các ứng dụng và trò chơi web hiện đại. Quá trình biên dịch (chuyển mã viết thành ngôn ngữ mà thiết bị có thể hiểu) biến mã thành một chuỗi byte, do đó chương trình có thể dễ dàng được kiểm tra trên bất kỳ máy ảo Java nào.

Lập trình từ đầu. Bắt đầu với mã hóa Java và Web từ đâu?

Ngôn ngữ Java được sử dụng rộng rãi trong phát triển web. Trước khi bắt đầu quá trình lập trình chính thức, bạn nên học Java, PHP, MySQL, HTML, CSS. Một lời giải thích chi tiết hơn về các khái niệm này được đưa ra dưới đây:

  1. Java - được sử dụng để viết các tiện ích cho trang web và viết logic chức năng của trang web.
  2. PHP là ngôn ngữ để tạo các trang web cá nhân. Nó có cấu trúc kịch bản. Ngôn ngữ hàng đầu trong việc tạo website động phổ biến hiện nay. PHP là cần thiết để hiểu kịch bản và lập trình từ đầu. Nơi để bắt đầu? Từ việc đọc cuốn sách "PHP: Con đường đúng đắn" của Josh Lockhat.
  3. MySQL là một hệ thống để quản lý những điều cơ bản về dữ liệu. Được sử dụng rộng rãi trong việc tạo các trang web yêu cầu lưu trữ lượng lớn dữ liệu được nhóm.
  4. HTML không phải là ngôn ngữ lập trình. Đây là ngôn ngữ đánh dấu được sử dụng để viết phần cơ bản của trang web (xây dựng các khối, phân phối văn bản và đoạn văn, v.v.).
  5. CSS - Biểu định kiểu xếp tầng. Chỉ được sử dụng cùng với HTML để tạo kiểu dáng và diện mạo cho ngôn ngữ đánh dấu.

Chỉ bằng cách tìm hiểu các khái niệm cơ bản về các cột mốc quan trọng của những công nghệ này, bạn mới có thể bắt đầu tạo các trang web động chuyên nghiệp đang có nhu cầu lớn hiện nay.

Lập trình web. Sự liên quan và tính năng

Chủ đề lập trình Web đặc biệt phù hợp ngày nay. Như đã nêu ở trên, để bắt đầu phát triển các thành phần web, bạn cần có một lượng kiến ​​thức khá lớn về ngôn ngữ đánh dấu, tạo tập lệnh, logic và style.

Ngày nay, bạn sẽ không làm ai ngạc nhiên với các trang web chỉ được tạo bằng HTML và CSS, vì vậy các nhà phát triển web có thể làm cho trang web trở nên đẹp mắt về mặt hình ảnh cũng như cung cấp cho nó tất cả các chức năng cần thiết cho người dùng đã trở nên có nhu cầu.

Kiểu phát triển này yêu cầu tạo ra hai loại chương trình giống nhau: phần máy chủ và phần máy khách. Lập trình viên phải hiểu nguyên lý hoạt động của cái gọi là ổ cắm - gói dữ liệu cho phép truyền các luồng thông tin cần thiết qua mạng giữa máy chủ và máy khách.

Tạo ứng dụng cho hệ điều hành Windows

Để phát triển các chương trình như vậy, bạn sẽ cần kiến ​​thức về ngôn ngữ C#. Một dịch vụ miễn phí của Microsoft có tên Virtual Academy sẽ cho phép bạn tìm hiểu tất cả các tính năng của ngôn ngữ này và thực hành viết các ứng dụng đơn giản.

Theo chính sách mới của Microsoft, tất cả các ứng dụng đều được tải lên kho phần mềm để bạn có thể có quyền truy cập để kiếm tiền từ dự án của mình.

Họ ngôn ngữ C (C, C++, C#). Đặc điểm

Lập trình từ đầu - bắt đầu chọn ngôn ngữ từ đâu? Câu trả lời cho câu hỏi này có thể có được bằng cách đi sâu vào chi tiết hơn về các loại công nghệ tạo ứng dụng. Sự liên quan của một ngôn ngữ cụ thể cũng cần được tính đến.

Các ngôn ngữ C, C++, C# có một điểm chung - sự hiện diện của các hàm OOP (lập trình hướng đối tượng). Công nghệ này có thể đơn giản hóa đáng kể quá trình viết mã chương trình. Mỗi đối tượng phần mềm được mô tả trong một lớp cụ thể và có các tham số, phương thức và thuộc tính riêng. Do đó, lập trình viên không phải viết những đoạn mã lớn mỗi lần nếu cùng một đối tượng cần được sử dụng nhiều lần.

Các dịch vụ Internet hữu ích để tìm hiểu các nguyên tắc lập trình cơ bản và cấu trúc mã của bất kỳ ứng dụng nào

Ở giai đoạn đào tạo đầu tiên, hầu hết mọi dịch vụ web đều cung cấp cho bạn thử các khả năng của nó bằng Pascal, ngôn ngữ cấp cao đơn giản nhất. Nó được sử dụng cho mục đích giáo dục và được dạy trong các trường học và cao đẳng kỹ thuật để sinh viên có thể hiểu lập trình từ đầu. Bắt đầu học mã Pascal từ đâu? Trước hết, bạn cần tải môi trường phát triển xuống PC. Đây là một tệp thực thi nhỏ trong đó mã chương trình sẽ được viết. Hãy sử dụng TurboPascal vì đây là môi trường phổ biến nhất để học ngôn ngữ lập trình này.

HourOfCode là một dịch vụ web của Microsoft. Nó nhằm mục đích cho học sinh thấy rõ chu trình, biến, lớp và điều kiện là gì. Quá trình học tập giống như một trò chơi.

CodeAcademy là một nguồn tài nguyên mạnh mẽ để học hầu hết mọi công nghệ mã hóa. Bằng cách chỉ dành một giờ mỗi ngày, bạn thậm chí sẽ không nhận thấy mình sẽ học lập trình và tạo các dự án của riêng mình như thế nào.

Udacity là một dịch vụ cung cấp cho người dùng quyền truy cập miễn phí vào các bài giảng của các giáo sư và nhà phát triển nổi tiếng.

Đạt được kinh nghiệm ban đầu. Làm việc tự do

Sau khi tìm hiểu các nguyên tắc cơ bản của ngôn ngữ bạn đã chọn, bạn có thể bắt đầu các dự án đầu tiên của mình một cách an toàn. Bắt đầu làm việc tự do, vì đây là cách bạn điền vào danh mục đầu tư của mình và tích lũy kinh nghiệm giao tiếp với khách hàng. Những kỹ năng như vậy sẽ hữu ích trong tương lai nếu bạn muốn xin việc ở một công ty với tư cách là nhà phát triển phần mềm chính thức.

Điểm mấu chốt

Lập trình từ đầu: bắt đầu từ đâu? Đối với những người mới bắt đầu học, các giáo sư từ các trường đại học nổi tiếng thế giới khuyên nên thực hành với các cấu trúc cơ bản tạo thành nền tảng của bất kỳ ngôn ngữ lập trình nào. Đăng ký các khóa học chuyên ngành hoặc tự học bằng cách nghe bài giảng trực tuyến.

Lập trình là viết mã nguồn của chương trình bằng một trong các ngôn ngữ lập trình. Có nhiều ngôn ngữ lập trình khác nhau, nhờ đó mà tất cả các loại chương trình được tạo ra để giải quyết một số vấn đề nhất định. Ngôn ngữ lập trình là một tập hợp các từ dành riêng để viết mã nguồn của chương trình. Hệ thống máy tính chưa (chưa) có thể hiểu được ngôn ngữ của con người, càng không thể hiểu được logic của con người (đặc biệt là logic của phụ nữ), vì vậy tất cả các chương trình đều được viết bằng ngôn ngữ lập trình, sau đó được dịch sang ngôn ngữ máy tính hoặc mã máy. Các hệ thống dịch mã nguồn chương trình thành mã máy rất phức tạp và theo quy luật, chúng được tạo ra trong hàng chục tháng và hàng chục lập trình viên. Những hệ thống như vậy được gọi là môi trường hoặc công cụ lập trình ứng dụng tích hợp.

Hệ thống lập trình là một môi trường trực quan rộng lớn, được suy nghĩ kỹ lưỡng, nơi bạn có thể viết mã nguồn của chương trình, dịch nó thành mã máy, kiểm tra, gỡ lỗi, v.v. Ngoài ra, có những chương trình cho phép bạn thực hiện các hành động trên bằng dòng lệnh.

Bạn có thể đã nghe thuật ngữ “một chương trình được viết cho Windows hoặc Linux hoặc Unix” nhiều lần. Thực tế là môi trường lập trình khi dịch ngôn ngữ lập trình sang mã máy có thể có hai loại - trình biên dịch và trình thông dịch. Biên dịch hoặc giải thích một chương trình chỉ định cách chương trình sẽ tiếp tục được thực thi trên thiết bị. Các chương trình viết bằng Java luôn hoạt động trên cơ sở diễn giải, trong khi các chương trình viết bằng C/C++ được biên dịch. Sự khác biệt giữa hai phương pháp này là gì?

Trình biên dịch sau khi viết mã nguồn tại thời điểm biên dịch sẽ đọc toàn bộ mã nguồn của chương trình cùng một lúc và dịch sang mã máy. Sau đó, chương trình tồn tại dưới dạng một tổng thể duy nhất và chỉ có thể được thực thi trong hệ điều hành mà nó được viết. Do đó, các chương trình viết cho Windows không thể hoạt động trong môi trường Linux và ngược lại. Trình thông dịch thực thi chương trình từng bước hoặc từng dòng mỗi lần chương trình được thực thi. Trong quá trình diễn giải, không phải mã thực thi được tạo ra mà là mã ảo, sau đó được thực thi bởi máy ảo Java. Do đó, trên bất kỳ nền tảng nào - Windows hay Linux, các chương trình Java đều có thể được thực thi như nhau nếu có một máy Java ảo trong hệ thống, còn được gọi là Hệ thống thời gian chạy.

Lập trình hướng đối tượng

Lập trình hướng đối tượng được xây dựng trên cơ sở các đối tượng, có phần giống với thế giới của chúng ta. Nếu bạn nhìn xung quanh, bạn chắc chắn có thể tìm thấy thứ gì đó sẽ giúp bạn hiểu rõ hơn về mô hình lập trình đó. Ví dụ, bây giờ tôi đang ngồi ở bàn làm việc và gõ chương này trên một máy tính, bao gồm màn hình, bộ phận hệ thống, bàn phím, chuột, loa, v.v. Tất cả những bộ phận này là những đối tượng tạo nên một chiếc máy tính. Biết được điều này, rất dễ dàng để xây dựng một số loại mô hình tổng quát về hoạt động của toàn bộ máy tính. Nếu bạn không hiểu sự phức tạp của các thuộc tính phần mềm và phần cứng của máy tính, thì chúng ta có thể nói rằng đối tượng System Unit thực hiện một số hành động nhất định được hiển thị bởi đối tượng Monitor. Ngược lại, đối tượng Keyboard có thể điều chỉnh hoặc thậm chí thiết lập các hành động cho đối tượng System Unit, điều này ảnh hưởng đến hoạt động của đối tượng Monitor. Quá trình được trình bày mô tả rất rõ toàn bộ hệ thống lập trình hướng đối tượng.

Hãy tưởng tượng một sản phẩm phần mềm mạnh mẽ nào đó chứa hàng trăm nghìn dòng mã. Toàn bộ chương trình được thực thi từng dòng, từng dòng và về nguyên tắc, mỗi dòng mã tiếp theo nhất thiết phải được kết nối với dòng mã trước đó. Nếu bạn không sử dụng lập trình hướng đối tượng và khi bạn cần thay đổi mã chương trình này, chẳng hạn như nếu bạn cần cải thiện một số yếu tố, thì bạn sẽ phải thực hiện rất nhiều công việc với toàn bộ mã nguồn của chương trình này.

Trong lập trình hướng đối tượng, mọi thứ đơn giản hơn nhiều, hãy quay lại ví dụ về hệ thống máy tính. Giả sử bạn không còn hài lòng với màn hình 17 inch nữa. Tất nhiên, bạn có thể dễ dàng đổi nó lấy một màn hình 20 inch nếu bạn có nguồn tài chính nhất định. Bản thân quá trình trao đổi sẽ không gây ra vấn đề lớn, trừ khi bạn phải thay đổi trình điều khiển, lau bụi dưới màn hình cũ, thế là xong. Lập trình hướng đối tượng gần như dựa trên nguyên tắc hoạt động này, trong đó một phần nhất định của mã có thể biểu thị một lớp đối tượng đồng nhất có thể dễ dàng nâng cấp hoặc thay thế.

Lập trình hướng đối tượng phản ánh rất dễ dàng và rõ ràng bản chất của vấn đề đang được giải quyết và quan trọng nhất là giúp loại bỏ các đối tượng không cần thiết mà không làm hỏng toàn bộ chương trình, thay thế các đối tượng này bằng những đối tượng mới hơn. Theo đó, khả năng đọc tổng thể mã nguồn của toàn bộ chương trình trở nên dễ dàng hơn nhiều. Điều quan trọng nữa là cùng một mã có thể được sử dụng trong các chương trình hoàn toàn khác nhau.

Các lớp học

Cốt lõi của tất cả các chương trình Java là các lớp, trên đó lập trình hướng đối tượng được dựa trên. Về cơ bản bạn đã biết lớp học là gì nhưng bạn vẫn chưa nhận ra điều đó. Trong phần trước chúng ta đã nói về các đối tượng, sử dụng cấu trúc của toàn bộ máy tính làm ví dụ. Mỗi đối tượng mà máy tính được lắp ráp là một đại diện cho lớp của nó. Ví dụ: lớp Màn hình hợp nhất tất cả các màn hình, bất kể loại, kích cỡ và khả năng của chúng và một màn hình cụ thể đặt trên bàn của bạn là một đối tượng của lớp màn hình.

Cách tiếp cận này giúp dễ dàng mô hình hóa tất cả các loại quy trình lập trình, giúp giải quyết vấn đề dễ dàng hơn. Ví dụ: có bốn đối tượng thuộc bốn lớp khác nhau: màn hình, thiết bị hệ thống, bàn phím và loa. Để phát tệp âm thanh, bạn cần ra lệnh cho thiết bị hệ thống bằng bàn phím; bạn sẽ quan sát chính hành động ra lệnh một cách trực quan trên màn hình và kết quả là loa sẽ phát tệp âm thanh. Nghĩa là, bất kỳ đối tượng nào cũng là một phần của một lớp nhất định và chứa tất cả các công cụ và khả năng có sẵn cho lớp này. Có thể có bao nhiêu đối tượng của một lớp cũng cần thiết để giải quyết vấn đề.

phương pháp

Khi đưa ra một ví dụ về việc phát một tệp âm thanh, người ta đề cập rằng một lệnh hoặc thông báo được đưa ra, trên cơ sở đó một số hành động nhất định được thực hiện. Nhiệm vụ thực hiện các hành động được giải quyết bằng các phương thức mà mỗi đối tượng có. Phương thức là một tập hợp các lệnh có thể được sử dụng để thực hiện một số hành động nhất định với một đối tượng.

Mỗi đối tượng có mục đích riêng và được thiết kế để giải quyết một loạt vấn đề nhất định bằng cách sử dụng các phương thức. Chẳng hạn, một đối tượng Bàn phím sẽ có tác dụng gì nếu bạn không thể nhấn phím mà vẫn có thể ra lệnh? Đối tượng Bàn phím có một số phím nhất định mà người dùng có thể kiểm soát thiết bị đầu vào và có thể đưa ra các lệnh cần thiết. Các lệnh như vậy được xử lý bằng các phương thức.

Ví dụ: bạn nhấn phím Esc để hủy bất kỳ hành động nào và từ đó đưa ra lệnh cho phương thức được gán cho phím này, giải quyết nhiệm vụ này ở cấp chương trình. Câu hỏi đặt ra ngay lập tức về số lượng phương thức của đối tượng Bàn phím, nhưng có thể có cách triển khai khác - từ việc xác định các phương thức cho từng phím (nói chung là không khôn ngoan) và đến việc tạo một phương thức duy nhất sẽ giám sát trạng thái chung của bàn phím. Nghĩa là, phương pháp này giám sát xem một phím đã được nhấn hay chưa, sau đó, tùy thuộc vào phím nào được kích hoạt, sẽ quyết định phải làm gì.