Thứ Năm, 28 tháng 6, 2018

Java - Ra quyết định

Cấu trúc ra quyết định có một hoặc nhiều điều kiện được chương trình đánh giá hoặc kiểm tra, cùng với một câu lệnh hoặc câu lệnh sẽ được thực hiện nếu điều kiện được xác định là đúng và các câu lệnh khác sẽ được thực hiện nếu điều kiện được xác định là sai.

Sau đây là hình thức chung của một cấu trúc ra quyết định điển hình được tìm thấy trong hầu hết các ngôn ngữ lập trình java

ảnh minh họa

Ngôn ngữ:  học lập trình Java cung cấp các loại tuyên bố ra quyết định sau đây. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.

Sr.No.Tuyên bố & mô tả
1nếu câu lệnh
Một câu lệnh if bao gồm một biểu thức boolean theo sau bởi một hoặc nhiều câu lệnh.
2if ... else statement
Một câu lệnh if có thể được theo sau bởi một câu lệnh tùy chọn khác , nó thực thi khi biểu thức boolean là false.
3câu lệnh lồng nhau
Bạn có thể sử dụng một trong nếu hoặc else if tuyên bố bên khác nếu hoặc else if statement (s).
4báo cáo chuyển đổi
Một câu lệnh switch cho phép một biến được kiểm tra tính bình đẳng dựa vào một danh sách các giá trị.

Các ? : Nhà điều hành

Chúng tôi đã bao gồm nhà điều hành có điều kiện? : trong chương trước có thể được sử dụng để thay thế nếu ... các câu lệnh khác . Nó có dạng chung sau đây

Exp1 ? Exp2 : Exp3;

Trường hợp Exp1, Exp2 và Exp3 là các biểu thức. Chú ý việc sử dụng và vị trí của đại tràng.

Để xác định giá trị của toàn bộ biểu thức, ban đầu exp1 được đánh giá.

Nếu giá trị của exp1 là true thì giá trị của Exp2 sẽ là giá trị của toàn bộ biểu thức.

Nếu giá trị của exp1 là false, thì Exp3 được đánh giá và giá trị của nó trở thành giá trị của toàn bộ biểu thức.

Tiếp theo là gì

Trong chương tiếp theo, chúng ta sẽ thảo luận về lớp Number (trong gói java.lang) và các lớp con của nó trong Ngôn ngữ Java.

Chúng tôi sẽ xem xét một số tình huống mà bạn sẽ sử dụng instantiations của các lớp này thay vì các kiểu dữ liệu nguyên thủy, cũng như các lớp như định dạng, các hàm toán học mà bạn cần biết khi làm việc với các số.

Thứ Tư, 27 tháng 6, 2018

Điều khiển vòng lặp Java

Có thể có một tình huống khi bạn cần thực hiện một khối mã nhiều lần. Nói chung, các câu lệnh được thực thi tuần tự: Câu lệnh đầu tiên trong một hàm được thực hiện trước tiên, tiếp theo là câu lệnh thứ hai và tiếp tục như vậy.

Ngôn ngữ lập trình java cung cấp các cấu trúc điều khiển khác nhau cho phép các đường dẫn thực thi phức tạp hơn.

Một câu lệnh vòng lặp cho phép chúng ta thực hiện một câu lệnh hoặc một nhóm các câu lệnh nhiều lần và sau đây là dạng chung của một câu lệnh vòng lặp trong hầu hết các ngôn ngữ lập trình 

ảnh minh họa

Ngôn ngữ lập trình Java cung cấp các loại vòng lặp sau để xử lý các yêu cầu lặp. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.

Sr.No.Vòng lặp & mô tả
1trong khi lặp lại

Lặp lại câu lệnh hoặc nhóm câu lệnh trong khi điều kiện đã cho là đúng. Nó kiểm tra điều kiện trước khi thực hiện vòng lặp.
2cho vòng lặp

Thực hiện một chuỗi các câu lệnh nhiều lần và viết tắt mã quản lý biến vòng lặp.
3do ... while loop

Giống như một câu lệnh while, ngoại trừ việc nó kiểm tra điều kiện ở cuối thân vòng lặp.

Câu lệnh điều khiển vòng lặp

Các câu lệnh điều khiển vòng lặp thay đổi thực thi từ chuỗi bình thường của nó. Khi thực thi rời khỏi một phạm vi, tất cả các đối tượng tự động đã được tạo trong phạm vi đó sẽ bị hủy.

Java hỗ trợ các câu lệnh điều khiển sau. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.

Sr.No.Bảng điều khiển & mô tả
1tuyên bố phá vỡ

Chấm dứt vòng lặp hoặc switch tuyên bố và chuyển thực hiện để báo cáo kết quả ngay sau khi vòng lặp hoặc switch.
2tuyên bố tiếp tục

Làm cho vòng lặp bỏ qua phần còn lại của cơ thể và ngay lập tức kiểm tra lại tình trạng của nó trước khi lặp lại.

Tăng cường cho vòng lặp trong Java

Tính đến Java 5, vòng lặp nâng cao đã được giới thiệu. Điều này chủ yếu được sử dụng để thu thập thông qua các phần tử bao gồm mảng.

Cú pháp

Sau đây là cú pháp của tăng cường cho vòng lặp

for(declaration : expression) {
   // Statements
}

Khai báo - Biến khối mới được khai báo, là một kiểu tương thích với các phần tử của mảng mà bạn đang truy cập. Biến sẽ có sẵn trong khối và giá trị của nó sẽ giống với phần tử mảng hiện tại.

Expression - Điều này đánh giá cho mảng mà bạn cần lặp lại. Biểu thức có thể là một biến mảng hoặc gọi phương thức trả về một mảng.

Thí dụ

public class Test {

   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};

      for(int x : numbers ) {
         System.out.print( x );
         System.out.print(",");
      }
      System.out.print("\n");
      String [] names = {"James", "Larry", "Tom", "Lacy"};

      for( String name : names ) {
         System.out.print( name );
         System.out.print(",");
      }
   }
}

Điều này sẽ tạo ra kết quả sau 

Đầu ra

10, 20, 30, 40, 50,
James, Larry, Tom, Lacy,

tiếp theo là gì

Trong chương sau, chúng ta sẽ tìm hiểu về các câu lệnh ra quyết định trong lập trình Java.


Thứ Năm, 21 tháng 6, 2018

Java - Các loại Modifier

Công cụ sửa đổi là từ khóa mà bạn thêm vào các định nghĩa đó để thay đổi ý nghĩa của chúng. Ngôn ngữ lập trình Java có nhiều loại công cụ sửa đổi, bao gồm những điều sau đây

NIIT-ICT
ảnh minh họa

Trình sửa đổi truy cập Java

Trình sửa đổi không truy cập

Để sử dụng công cụ sửa đổi, bạn bao gồm từ khóa của nó trong định nghĩa của một lớp, phương thức hoặc biến. Công cụ sửa đổi trước phần còn lại của câu lệnh, như trong ví dụ sau.

Thí dụ

public class className {
   // ...
}

private boolean myFlag;
static final double weeks = 9.5;
protected static final int BOXWIDTH = 42;

public static void main(String[] arguments) {
   // body of method
}

Điều khiển truy cập

Java cung cấp một số công cụ sửa đổi truy cập để thiết lập các mức truy cập cho các lớp, các biến, các phương thức và các hàm tạo. Bốn cấp độ truy cập là -

Hiển thị với gói, mặc định. Không cần bổ trợ.

Chỉ hiển thị với lớp học (riêng tư).

Hiển thị với thế giới (công khai).

Hiển thị với gói và tất cả các lớp con (được bảo vệ).

Trình sửa đổi không truy cập

Java cung cấp một số công cụ sửa đổi không truy cập để đạt được nhiều chức năng khác.

Trình sửa đổi tĩnh để tạo các phương thức và các biến lớp.

Công cụ sửa đổi cuối cùng để hoàn thành việc triển khai các lớp, phương thức và các biến.

Công cụ sửa đổi trừu tượng để tạo các lớp và phương thức trừu tượng.

Bộ chỉnh sửa đồng bộ và dễ bay hơi , được sử dụng cho các chủ đề.

Tiếp theo là gì

Trong phần tiếp theo, chúng ta sẽ thảo luận về các toán tử cơ bản được sử dụng trong ngôn ngữ Java. Chương này sẽ cung cấp cho bạn tổng quan về cách các toán tử này có thể được sử dụng trong quá trình phát triển ứng dụng.

Thứ Tư, 20 tháng 6, 2018

Java - Các loại biến

Một biến cung cấp cho chúng ta lưu trữ có tên là các chương trình của chúng ta có thể thao tác. Mỗi biến trong Java có một kiểu cụ thể, xác định kích thước và bố cục của bộ nhớ của biến; phạm vi của các giá trị có thể được lưu trữ trong bộ nhớ đó; và tập hợp các hoạt động có thể được áp dụng cho biến.

ảnh minh họa


Bạn phải khai báo tất cả các biến trước khi chúng có thể được sử dụng. Sau đây là dạng cơ bản của một khai báo biến
data type variable [ = value][, variable [ = value] ...] ;

Ở đây kiểu dữ liệu là một trong các kiểu dữ liệu và biến của Java là tên của biến. Để khai báo nhiều hơn một biến kiểu được chỉ định, bạn có thể sử dụng danh sách được phân cách bằng dấu phẩy.

Sau đây là các ví dụ hợp lệ về khai báo biến và khởi tạo trong lập trình Java 

Thí dụ

int a, b, c;         // Declares three ints, a, b, and c.
int a = 10, b = 10;  // Example of initialization
byte B = 22;         // initializes a byte type variable B.
double pi = 3.14159; // declares and assigns a value of PI.
char a = 'a';        // the char variable a iis initialized with value 'a'






Chương này sẽ giải thích các loại biến khác nhau có sẵn trong Ngôn ngữ Java. Có ba loại biến trong Java
  • Biến cục bộ
  • Các biến cá thể
  • Biến lớp / tĩnh
  • Biến cục bộ
Các biến cục bộ được khai báo trong các phương thức, các hàm tạo hoặc các khối.

Các biến cục bộ được tạo khi phương thức, hàm tạo hoặc khối được nhập và biến sẽ bị hủy khi nó thoát khỏi phương thức, hàm tạo hoặc khối.

Không thể sử dụng các công cụ sửa đổi truy cập cho các biến cục bộ.

Biến cục bộ chỉ hiển thị trong phương thức được khai báo, hàm tạo hoặc khối.

Các biến cục bộ được triển khai ở cấp độ ngăn xếp nội bộ.

Không có giá trị mặc định cho các biến cục bộ, do đó các biến cục bộ phải được khai báo và giá trị ban đầu sẽ được gán trước lần sử dụng đầu tiên.

Thí dụ

Ở đây, tuổi là một biến cục bộ. Điều này được định nghĩa bên trong phương thức pupAge () và phạm vi của nó chỉ giới hạn ở phương thức này.
public class Test {
   public void pupAge() {
      int age = 0;
      age = age + 7;
      System.out.println("Puppy age is : " + age);
   }

   public static void main(String args[]) {
      Test test = new Test();
      test.pupAge();
   }
}
Điều này sẽ tạo ra kết quả sau

Đầu ra

Puppy age is: 7

Thí dụ

Ví dụ sau sử dụng tuổi mà không khởi tạo nó, vì vậy nó sẽ đưa ra một lỗi tại thời điểm biên dịch.
public class Test {
   public void pupAge() {
      int age;
      age = age + 7;
      System.out.println("Puppy age is : " + age);
   }

   public static void main(String args[]) {
      Test test = new Test();
      test.pupAge();
   }
}
Điều này sẽ tạo ra lỗi sau trong khi biên dịch nó

Đầu ra

Test.java:4:variable number might not have been initialized
age = age + 7;
         ^
1 error

Các biến thể hiện

Các biến cá thể được khai báo trong một lớp, nhưng bên ngoài một phương thức, hàm tạo hoặc bất kỳ khối nào.

Khi một không gian được cấp phát cho một đối tượng trong heap, một khe cho mỗi giá trị biến thể hiện được tạo ra.

Các biến cá thể được tạo khi một đối tượng được tạo với việc sử dụng từ khóa 'mới' và bị hủy khi đối tượng bị hủy.

Các biến cá thể chứa các giá trị phải được tham chiếu bởi nhiều phương thức, hàm tạo hoặc khối hoặc các phần thiết yếu của trạng thái của đối tượng phải có trong toàn bộ lớp.

Các biến cá thể có thể được khai báo ở cấp lớp trước hoặc sau khi sử dụng.

Các biến tố truy cập có thể được cung cấp cho các biến mẫu.

Các biến cá thể được hiển thị cho tất cả các phương thức, các hàm tạo và khối trong lớp. Thông thường, bạn nên đặt các biến này ở chế độ riêng tư (cấp truy cập). Tuy nhiên, khả năng hiển thị cho các lớp con có thể được cung cấp cho các biến này với việc sử dụng các công cụ sửa đổi truy cập.

Biến thể hiện có giá trị mặc định. Đối với các số, giá trị mặc định là 0, đối với Booleans nó là false và đối với các tham chiếu đối tượng, nó là null. Giá trị có thể được chỉ định trong quá trình khai báo hoặc bên trong hàm tạo.

Các biến cá thể có thể được truy cập trực tiếp bằng cách gọi tên biến bên trong lớp. Tuy nhiên, trong các phương thức tĩnh (khi các biến mẫu được cung cấp khả năng truy cập), chúng phải được gọi bằng cách sử dụng tên đầy đủ. ObjectReference.VariableName .

Thí dụ

import java.io.*;
public class Employee {

   // this instance variable is visible for any child class.
   public String name;

   // salary  variable is visible in Employee class only.
   private double salary;

   // The name variable is assigned in the constructor.
   public Employee (String empName) {
      name = empName;
   }

   // The salary variable is assigned a value.
   public void setSalary(double empSal) {
      salary = empSal;
   }

   // This method prints the employee details.
   public void printEmp() {
      System.out.println("name  : " + name );
      System.out.println("salary :" + salary);
   }

   public static void main(String args[]) {
      Employee empOne = new Employee("Ransika");
      empOne.setSalary(1000);
      empOne.printEmp();
   }
}
Điều này sẽ tạo ra kết quả sau

Đầu ra

name  : Ransika
salary :1000.0

Biến lớp / tĩnh

Các biến lớp còn được gọi là các biến tĩnh được khai báo với từ khóa tĩnh trong một lớp, nhưng bên ngoài một phương thức, hàm tạo hoặc một khối.

Sẽ chỉ có một bản sao của mỗi biến lớp cho mỗi lớp, bất kể có bao nhiêu đối tượng được tạo ra từ nó.

Biến tĩnh hiếm khi được sử dụng ngoài việc được khai báo là hằng số. Hằng số là các biến được khai báo là công khai / riêng tư, cuối cùng và tĩnh. Biến cố định không bao giờ thay đổi từ giá trị ban đầu của chúng.

Các biến tĩnh được lưu trữ trong bộ nhớ tĩnh. Rất hiếm khi sử dụng các biến tĩnh khác với khai báo cuối cùng và được sử dụng dưới dạng hằng số công khai hoặc riêng tư.

Các biến tĩnh được tạo khi chương trình khởi động và hủy khi chương trình dừng.

Khả năng hiển thị tương tự như các biến mẫu. Tuy nhiên, hầu hết các biến tĩnh được khai báo công khai vì chúng phải có sẵn cho người dùng của lớp.

Các giá trị mặc định giống như các biến mẫu. Đối với các số, giá trị mặc định là 0; cho Booleans, nó là sai; và đối với các tham chiếu đối tượng, nó là null. Giá trị có thể được chỉ định trong quá trình khai báo hoặc bên trong hàm tạo. Ngoài ra, các giá trị có thể được chỉ định trong các khối khởi tạo tĩnh đặc biệt.

Các biến tĩnh có thể được truy cập bằng cách gọi với tên lớp ClassName.VariableName .

Khi khai báo các biến lớp như là cuối cùng tĩnh công khai, thì các tên biến (hằng số) là tất cả trong trường hợp trên. Nếu các biến tĩnh không công khai và cuối cùng, cú pháp đặt tên giống như các biến mẫu và biến cục bộ.

Thí dụ

import java.io.*;
public class Employee {

   // salary  variable is a private static variable
   private static double salary;

   // DEPARTMENT is a constant
   public static final String DEPARTMENT = "Development ";

   public static void main(String args[]) {
      salary = 1000;
      System.out.println(DEPARTMENT + "average salary:" + salary);
   }
}
Điều này sẽ tạo ra kết quả sau 

Đầu ra

Development average salary:1000

Lưu ý - Nếu các biến được truy cập từ một lớp bên ngoài, hằng số nên được truy cập như Employee.DEPARTMENT

Tiếp theo là gì

Bạn đã sử dụng công cụ sửa đổi truy cập (công khai và riêng tư) trong chương này. Chương tiếp theo sẽ giải thích chi tiết về Modifiers Access và Non-Access Modifiers.

Thứ Ba, 19 tháng 6, 2018

Java - Đối tượng và Lớp học

Khóa học lập trình Java là một ngôn ngữ hướng đối tượng. Là một ngôn ngữ có tính năng hướng đối tượng, Java hỗ trợ các khái niệm cơ bản sau:
  • Đa hình
  • Di sản
  • Đóng gói
  • Trừu tượng
  • Các lớp học
  • Các đối tượng
Ví dụ
  • phương pháp
  • Phân tích thư

Trong chương này, chúng ta sẽ xem xét các khái niệm - Các lớp và các đối tượng.

ảnh minh họa


Đối tượng - Đối tượng có các trạng thái và hành vi. Ví dụ: Chó có trạng thái - màu sắc, tên, giống cũng như hành vi - vẫy đuôi, sủa, ăn. Một đối tượng là một thể hiện của một lớp.

Lớp - Một lớp có thể được định nghĩa là một mẫu / kế hoạch chi tiết mô tả hành vi / trạng thái mà đối tượng của kiểu hỗ trợ của nó.

Các đối tượng trong Java

Bây giờ chúng ta hãy nhìn sâu vào các đối tượng là gì. Nếu chúng ta xem xét thế giới thực, chúng ta có thể tìm thấy nhiều vật thể xung quanh chúng ta, xe hơi, chó, con người, vv Tất cả những vật thể này đều có trạng thái và hành vi.

Nếu chúng ta xem xét một con chó, sau đó trạng thái của nó là - tên, giống, màu sắc, và hành vi là - sủa, vẫy đuôi, chạy.

Nếu bạn so sánh đối tượng phần mềm với một đối tượng trong thế giới thực, chúng có những đặc điểm rất giống nhau.

Các đối tượng phần mềm cũng có trạng thái và hành vi. Trạng thái của một đối tượng phần mềm được lưu trữ trong các trường và hành vi được hiển thị thông qua các phương thức.

Vì vậy, trong phát triển phần mềm, các phương thức hoạt động trên trạng thái bên trong của một đối tượng và truyền thông đối tượng đến đối tượng được thực hiện thông qua các phương thức.

Các lớp học trong Java

Một lớp là một kế hoạch chi tiết mà từ đó các đối tượng riêng lẻ được tạo ra.

Sau đây là một mẫu của một lớp.

Thí dụ
public class Dog {
   String breed;
   int age;
   String color;

   void barking() {
   }

   void hungry() {
   }

   void sleeping() {
   }
}

Một lớp có thể chứa bất kỳ loại biến nào sau đây.

Các biến cục bộ - Các biến được định nghĩa bên trong các phương thức, các hàm tạo hoặc các khối được gọi là các biến cục bộ. Biến sẽ được khai báo và khởi tạo trong phương thức và biến sẽ bị hủy khi phương thức đã hoàn thành.

Các biến cá thể - Các biến mẫu là các biến trong một lớp nhưng bên ngoài bất kỳ phương thức nào. Các biến này được khởi tạo khi lớp được khởi tạo. Các biến thể hiện có thể được truy cập từ bên trong bất kỳ phương thức, hàm tạo hoặc khối nào của lớp cụ thể đó.

Biến lớp - Biến lớp là các biến được khai báo trong một lớp, bên ngoài bất kỳ phương thức nào, với từ khóa tĩnh.

Một lớp có thể có bất kỳ số phương thức nào để truy cập vào giá trị của các kiểu phương thức khác nhau. Trong ví dụ trên, barking (), hungry () và sleeping () là các phương thức.

Sau đây là một số chủ đề quan trọng cần được thảo luận khi nhìn vào các lớp của Ngôn ngữ Java.

Constructors

Khi thảo luận về các lớp học, một trong những chủ đề phụ quan trọng nhất sẽ là các nhà xây dựng. Mỗi lớp đều có một hàm tạo. Nếu chúng ta không viết rõ ràng một hàm tạo cho một lớp, trình biên dịch Java xây dựng một hàm tạo mặc định cho lớp đó.

Mỗi khi một đối tượng mới được tạo, ít nhất một hàm tạo sẽ được gọi ra. Nguyên tắc chính của các nhà xây dựng là họ nên có cùng tên với lớp. Một lớp có thể có nhiều hơn một hàm tạo.

Sau đây là một ví dụ về một hàm tạo

Thí dụ
public class Puppy {
   public Puppy() {
   }

   public Puppy(String name) {
      // This constructor has one parameter, name.
   }
}

Java cũng hỗ trợ các lớp Singleton , nơi bạn có thể tạo chỉ một thể hiện của một lớp.

Lưu ý - Chúng tôi có hai loại hàm tạo khác nhau. Chúng ta sẽ thảo luận chi tiết về các nhà thầu trong các chương tiếp theo.

Tạo một đối tượng

Như đã đề cập trước đó, một lớp cung cấp các bản thiết kế cho các đối tượng. Về cơ bản, một đối tượng được tạo ra từ một lớp. Trong Java, từ khóa mới được sử dụng để tạo các đối tượng mới.

Có ba bước khi tạo một đối tượng từ một lớp

Tuyên bố - Một khai báo biến với một tên biến với một loại đối tượng.

Instantiation - Từ khóa 'mới' được sử dụng để tạo đối tượng.

Khởi tạo - Từ khóa 'mới' được theo sau bởi một cuộc gọi đến một hàm tạo. Cuộc gọi này khởi tạo đối tượng mới.

Sau đây là một ví dụ về việc tạo một đối tượng

Thí dụ
public class Puppy {
   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Passed Name is :" + name );
   }

   public static void main(String []args) {
      // Following statement would create an object myPuppy
      Puppy myPuppy = new Puppy( "tommy" );
   }
}
Nếu chúng ta biên dịch và chạy chương trình trên, thì nó sẽ tạo ra kết quả sau:

Đầu ra

Passed Name is :tommy

Truy cập các biến thể và phương thức

Các biến và phương thức thể hiện được truy cập thông qua các đối tượng đã tạo. Để truy cập một biến mẫu, sau đây là đường dẫn đầy đủ

/* First create an object */
ObjectReference = new Constructor();

/* Now call a variable as follows */
ObjectReference.variableName;

/* Now you can call a class method as follows */
ObjectReference.MethodName();

Thí dụ

Ví dụ này giải thích cách truy cập các biến mẫu và các phương thức của một lớp.
public class Puppy {
   int puppyAge;

   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Name chosen is :" + name );
   }

   public void setAge( int age ) {
      puppyAge = age;
   }

   public int getAge( ) {
      System.out.println("Puppy's age is :" + puppyAge );
      return puppyAge;
   }

   public static void main(String []args) {
      /* Object creation */
      Puppy myPuppy = new Puppy( "tommy" );

      /* Call class method to set puppy's age */
      myPuppy.setAge( 2 );

      /* Call another class method to get puppy's age */
      myPuppy.getAge( );

      /* You can access instance variable as follows as well */
      System.out.println("Variable Value :" + myPuppy.puppyAge );
   }
}
Nếu chúng ta biên dịch và chạy chương trình trên, thì nó sẽ tạo ra kết quả sau:

Đầu ra

Name chosen is :tommy
Puppy's age is :2
Variable Value :2

Quy tắc khai báo tệp nguồn

Như phần cuối cùng của phần này, bây giờ hãy xem xét các quy tắc khai báo tệp nguồn. Các quy tắc này là cần thiết khi khai báo các lớp, các câu lệnh import và các câu lệnh gói trong một tệp nguồn.

Chỉ có thể có một lớp công khai cho mỗi tệp nguồn.

Tệp nguồn có thể có nhiều lớp không công khai.

Tên lớp công khai phải là tên của tệp nguồn cũng nên được nối thêm .java ở cuối. Ví dụ: tên lớp là lớp công khai Employee {} thì tệp nguồn phải là Employee.java.

Nếu lớp được định nghĩa bên trong một gói, thì câu lệnh gói phải là câu lệnh đầu tiên trong tệp nguồn.

Nếu có các câu lệnh import, thì chúng phải được viết giữa câu lệnh package và khai báo lớp. Nếu không có câu lệnh gói nào thì câu lệnh nhập phải là dòng đầu tiên trong tệp nguồn.

Các câu lệnh import và package sẽ ngụ ý đến tất cả các lớp có trong tệp nguồn. Không thể khai báo các câu lệnh nhập và / hoặc gói khác nhau cho các lớp khác nhau trong tệp nguồn.

Các lớp có nhiều cấp truy cập và có nhiều loại lớp khác nhau; các lớp trừu tượng, các lớp cuối cùng, v.v. Chúng ta sẽ giải thích về tất cả những điều này trong chương sửa đổi truy cập.

Ngoài các loại lớp được đề cập ở trên, Java cũng có một số lớp đặc biệt được gọi là Lớp bên trong và Lớp ẩn danh.

Gói Java

Nói một cách đơn giản, nó là một cách phân loại các lớp và các giao diện. Khi phát triển các ứng dụng trong Java, hàng trăm lớp và giao diện sẽ được viết, do đó việc phân loại các lớp này là phải cũng như làm cho cuộc sống trở nên dễ dàng hơn nhiều.

Báo cáo nhập khẩu

Trong Java nếu một tên đầy đủ, bao gồm các gói và tên lớp được đưa ra, sau đó trình biên dịch có thể dễ dàng xác định vị trí mã nguồn hoặc các lớp. Nhập khẩu tuyên bố là một cách để đưa ra các vị trí thích hợp cho trình biên dịch để tìm thấy rằng lớp học cụ thể.

Ví dụ, dòng sau sẽ yêu cầu trình biên dịch tải tất cả các lớp có sẵn trong thư mục java_installation / java / io

import java.io.*;

Một nghiên cứu điển hình đơn giản

Đối với nghiên cứu điển hình của chúng tôi, chúng tôi sẽ tạo ra hai lớp học. Họ là Employee và EmployeeTest.

Đầu tiên mở notepad và thêm đoạn mã sau. Hãy nhớ rằng đây là lớp Employee và lớp là một lớp public. Bây giờ, lưu tệp nguồn này với tên Employee.java.

Lớp Employee có bốn biến mẫu - tên, tuổi, chỉ định và mức lương. Lớp này có một hàm tạo được định nghĩa rõ ràng, có tham số.

Thí dụ
import java.io.*;
public class Employee {

   String name;
   int age;
   String designation;
   double salary;

   // This is the constructor of the class Employee
   public Employee(String name) {
      this.name = name;
   }

   // Assign the age of the Employee  to the variable age.
   public void empAge(int empAge) {
      age = empAge;
   }

   /* Assign the designation to the variable designation.*/
   public void empDesignation(String empDesig) {
      designation = empDesig;
   }

   /* Assign the salary to the variable salary.*/
   public void empSalary(double empSalary) {
      salary = empSalary;
   }

   /* Print the Employee details */
   public void printEmployee() {
      System.out.println("Name:"+ name );
      System.out.println("Age:" + age );
      System.out.println("Designation:" + designation );
      System.out.println("Salary:" + salary);
   }
}
Như đã đề cập trước đó trong hướng dẫn này, việc xử lý bắt đầu từ phương thức chính. Do đó, để chúng ta chạy lớp Employee này, cần có một phương thức chính và các đối tượng cần được tạo. Chúng tôi sẽ tạo một lớp riêng cho các nhiệm vụ này.

Sau đây là lớp EmployeeTest , tạo ra hai cá thể của lớp Employee và gọi các phương thức cho mỗi đối tượng để gán các giá trị cho mỗi biến.

Lưu mã sau vào tệp EmployeeTest.java.

import java.io.*;
public class EmployeeTest {

   public static void main(String args[]) {
      /* Create two objects using constructor */
      Employee empOne = new Employee("James Smith");
      Employee empTwo = new Employee("Mary Anne");

      // Invoking methods for each object created
      empOne.empAge(26);
      empOne.empDesignation("Senior Software Engineer");
      empOne.empSalary(1000);
      empOne.printEmployee();

      empTwo.empAge(21);
      empTwo.empDesignation("Software Engineer");
      empTwo.empSalary(500);
      empTwo.printEmployee();
   }
}
Bây giờ, biên dịch cả hai lớp và sau đó chạy EmployeeTest để xem kết quả như sau:

Đầu ra

C:\> javac Employee.java
C:\> javac EmployeeTest.java
C:\> java EmployeeTest
Name:James Smith
Age:26
Designation:Senior Software Engineer
Salary:1000.0
Name:Mary Anne
Age:21
Designation:Software Engineer
Salary:500.0

Tiếp theo là gì

Trong phần tiếp theo, chúng ta sẽ thảo luận về các kiểu dữ liệu cơ bản trong Java và cách chúng có thể được sử dụng khi phát triển các ứng dụng Java.

Lập trình Java - Ngoại lệ

Một ngoại lệ (hoặc sự kiện đặc biệt) là một vấn đề phát sinh trong quá trình thực hiện chương trình. Khi xảy ra Ngoại lệ , luồng bình thường...