Lập trình Java cơ bản - Chương 2: Ngôn ngữ lập trình Java

Tổng quan về Java

Dịch và thực thi chương trình Java

Công cụ lập trình và chương trình dịch

Cú pháp và ngữ nghĩa

Các kiểu dữ liệu nguyên thủy

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

Khai báo và nhập xuất dữ liệu

 

ppt39 trang | Chuyên mục: Java | Chia sẻ: dkS00TYs | Lượt xem: 2283 | Lượt tải: 1download
Tóm tắt nội dung Lập trình Java cơ bản - Chương 2: Ngôn ngữ lập trình Java, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
n dịch ra mã máy ảo: Dùng trình biên dịch javac để biên dịch mã nguồn “.java” thành mã của máy ảo (java bytecode) có đuôi “.class” Thông dịch và thực thi: Việc thông dịch và thực thi dùng lệnh “java”. 2.2 Dịch và thực thi chương trình Java Ví dụ minh họa: Tạo chương trình nguồn /*Chương trình xuất dòng HelloWorld ra Console*/ package ch01; import java.util.*; class HelloWorldApp{ 	public static void main(String[] args){ 	//Xuat dong chu “HelloWorld” 	System.out.println(“HelloWorld”); 	} } Lưu lại với tên HelloWorldApp.java trong thư mục ch01 2.2 Dịch và thực thi chương trình Java Dòng đầu tiên khai báo gói chứa chương trình. Dòng tiếp theo khai báo nạp các lớp sử dụng. Khai báo lớp HelloWordApp phạm vi toàn cục Phương thức main() là điểm bắt đầu thực thi một ứng dụng. Lời chú thích: Ngôn ngữ Java hỗ trợ ba kiểu chú thích sau: /* text */: Viết chú thích trên nhiều dòng // text: Viết chú thích trên một dòng /** documentation */: Tự động phát sinh tài liệu. Dấu “{“ và “}”: bắt đầu và kết thúc một khối lệnh. Dấu chấm phẩy “;” để kết thúc một lệnh. 2.3 Công cụ lập trình và chương trình dịch J2SE: Download J2SE và cài đặt lên máy tính, cần cập nhật đường dẫn PATH hệ thống đến thư mục chứa chương trình dịch của ngôn ngữ java Viết mã nguồn java: Dùng công cụ JCreator LE v 5.0 của hãng XINOX Software. 2.3 Công cụ lập trình và chương trình dịch Bước 1-Tạo một dự án rỗng (Empty Project): Chọn menu File \ New \ Project. Chọn Empty project → Next. Nhập tên project, chọn Finish. Bước 2-Tạo một lớp mới tên HelloWorldApp và đưa vào Project hiện tại: Chọn File \ New \ Class. Nhập tên lớp là HelloWorldApp và chọn Finish. Bước 3-Soạn thảo mã nguồn: Cửa sổ WorkSpace - Cửa sổ soạn thảo mã nguồn. Dịch: Bấm F7. Thực thi: Bấm F5 2.4 Cú pháp và ngữ nghĩa Cú pháp: tập các luật xác định chính xác cách kết hợp của các chữ cái, các chữ số, và các ký hiệu. Các luật cú pháp được viết ở dạng đơn giản, xác định ngôn ngữ hình thức, gọi là siêu ngôn ngữ (metalanguage). Ngữ nghĩa: tập các luật xác định ý nghĩa các lệnh viết trong một ngôn ngữ lập trình. 2.4 Cú pháp và ngữ nghĩa Tên – định danh (Identifier): do người dùng đặt Là chuỗi các chữ cái, chữ số, dấu gạch dưới ( _ ), và dấu dollar ($). Tên phải bắt đầu bởi một chữ cái, dấu gạch dưới ( _ ), hoặc dấu dollar ($) Một tên không thể là một từ khóa, không thể là true, false, hoặc null. Tên có thể có độ dài bất kỳ. Tên → tham chiếu một lớp, một phương thức, một trường (biến hoặc hằng), hoặc một gói 2.4 Cú pháp và ngữ nghĩa Các từ khoá của Java 2.5 Các kiểu dữ liệu nguyên thủy Là các kiểu dữ liệu có hiệu lực một cách tự động 2.5 Các kiểu dữ liệu nguyên thủy Kích thước và miền giá trị 2.5 Các kiểu dữ liệu nguyên thủy Kiểu số nguyên: byte, short, int, long. Mặc định là int. Lưu ý đối với các phép toán trên số nguyên: Nếu hai toán hạng kiểu long → kết quả kiểu long. Một trong hai toán hạng không phải long thì được chuyển thành long trước khi thực hiện phép toán. Nếu hai toán hạng đầu không phải kiểu long thì phép tính sẽ thực hiện với kiểu int. Các toán hạng kiểu byte, short sẽ được chuyển sang kiểu int trước khi thực hiện phép toán. Không thể chuyển biến kiểu int và kiểu boolean 2.5 Các kiểu dữ liệu nguyên thủy Kiểu số thực: float và double Không có giá trị nhỏ nhất và lớn nhất. Chúng có thể âm, dương, vô cực âm, vô cực dương. Lưu ý đối với các phép toán: Mỗi toán hạng đều có kiểu chấm động thì phép toán chuyển thành phép toán dấu chấm động. Nếu có một toán hạng là double thì các toán hạng còn lại → double trước khi thực hiện phép toán. Biến kiểu float và double có thể ép chuyển sang kiểu dữ liệu khác trừ kiểu boolean. 2.5 Các kiểu dữ liệu nguyên thủy Kiểu ký tự (char): Có kích thước là hai bytes Chỉ dùng để biểu diễn các ký tự trong bộ mã Unicode. Như vậy kiểu char trong java có thể biểu diễn tất cả 216 = 65536 ký tự khác nhau. Giá trị mặc định cho một biến kiểu char là null. 2.5 Các kiểu dữ liệu nguyên thủy Kiểu luận lý (boolean): Kiểu boolean chỉ nhận một trong hai giá trị: true hoặc false. Trong java kiểu boolean không thể chuyển thành kiểu số nguyên và ngược lại. Giá trị mặc định của kiểu boolean là false. 2.6 Lớp và đối tượng Lớp: là một mô tả của một nhóm các đối tượng tương tự nhau về thuộc tính (tập các dữ liệu) và hành vi (tập các phương thức). Nói cách khác, lớp là một khuôn mẫu của một đối tượng. Ví dụ: lớp hình chữ nhật, là khuôn mẫu của một hình chữ nhật cụ thể. 2.6 Lớp và đối tượng Khai báo (định nghĩa) lớp: từ_bổ_nghĩa class { ; ….. ; constructor method_1 ….. method_n } 2.6 Lớp và đối tượng từ_bổ_nghĩa: chỉ phạm vi truy cập của lớp class: là từ khóa, sử dụng để khai báo lớp Tên_lớp: là tên chúng ta đặt cho lớp field_1, field_2, …., field_m: các thuộc tính, các biến, hay các thành phần dữ liệu của lớp. constructor: phương thức xây dựng, có nhiệm vụ khởi tạo đối tượng. method_1, method_2, …, method_n: các phương thức thể hiện các thao tác xử lý, tác động lên các thành phần dữ liệu của lớp. 2.6 Lớp và đối tượng Đối tượng: một thực thể có liên quan đến ngữ cảnh của một vấn đề. Nói cách khác, đối tượng là một trường hợp cụ thể của lớp. Ví dụ: Hình chữ nhật ABCD, là một đối tượng của lớp hình chữ nhật. Phương thức: xác định một hành vi của một lớp. Ví dụ phương thức area, để tính diện tích của hình chữ nhật. Cú pháp tạo đối tượng của lớp: Tên_lớp tên_đối_tượng = new Tên_lớp(); 2.6 Lớp và đối tượng Trong đó: Tên_lớp: là tên của lớp mà đối tượng thuộc về tên_đối_tượng: là tên chúng ta đặt cho đối tượng new: từ khóa, sử dụng để gọi phương thức constructor tạo đối tượng 2.7 Khai báo và nhập xuất dữ liệu Khai báo: Một phát biểu để liên kết một tên với một trường, một phương thức, một lớp, hoặc một gói. Biến: Là một vị trí trong bộ nhớ mà chương trình có thể tham chiếu đến qua một tên, lưu trữ một giá trị dữ liệu có thể thay đổi được. Khai báo: từ_bổ_nghĩa kiểu_dữ_liệu tên1, tên2, . . . ; //hoặc từ_bổ_nghĩa kiểu_dữ_liệu tên1 = giá_trị_1, . . . ; 2.7 Khai báo và nhập xuất dữ liệu kiểu_dữ_liệu: tên của kiểu hoặc lớp từ_bổ_nghĩa: các từ khoá của Java, chỉ phạm vi tác dụng của biến. Ví dụ: char ch;// Khai báo biến ch kiểu char public char ch1 = ‘a’;// biến ch1 kiểu char, giá trị ban đầu là ‘a’, phạm vi toàn cục String firstName; //Khai báo biến firstName thuộc lớp String Khai báo biến báo cho máy cấp phát vị trí nhớ đủ lưu trữ một giá trị của kiểu dữ liệu đó 2.7 Khai báo và nhập xuất dữ liệu Hằng: Là một vị trí trong bộ nhớ mà chương trình có thể tham chiếu đến qua một tên, lưu trữ một giá trị dữ liệu không thay đổi. Khai báo hằng: từ_bổ_nghĩa final kiểu_dữ_liệu tên_hằng = LiteralValue; Ví dụ: final char ch = ‘a’;// Khai báo hằng ch kiểu char, có giá trị là ‘a’ public final int id = 6;// Khai báo hằng id kiểu int, có phạm vi toàn cục 2.7 Khai báo và nhập xuất dữ liệu Một chuỗi là một dãy các ký tự đặt giữa hai dấu ngoặc kép. Ví dụ: “Today and tomorrow”, “A”, “” Các tác vụ của lớp chuỗi: Nối một chuỗi vào một chuỗi khác: toán tử +, ví dụ: String s = “Today” + “and tomorrow”; Đổi một giá trị số thành chuỗi: phương thức valueOf của lớp String. Ví dụ: String s = String.valueOf(123);// kết quả s = “123” 2.7 Khai báo và nhập xuất dữ liệu Đổi một chuỗi thành số, sử dụng phương thức parseXXX của lớp tương ứng. Ví dụ int n = Integer.parseInt(“123”);// kết quả n = 123 So sánh hai chuỗi với nhau, sử dụng phương thức equals của lớp String. Ví dụ boolean x = “ABC”.equals(“ABC”);// kết quả x = true 2.7 Khai báo và nhập xuất dữ liệu Lệnh gán: được sử dụng để gán biểu thức (expression) cho biến (variable) Cú pháp: 	variable = expression; Ví dụ: x = 1; 	// Gán 1 cho x; bankinh = 1.0; 	// Gán 1.0 cho bankinh; a = 'A'; 	// Gán 'A' cho a; x = x + 1;	// Lấy x cộng với 1 rồi gán vào x; c = Math.max(a, b); /* Gán giá trị của lời gọi phương thức max(a, b) của lớp Math vào c;*/ 2.7 Khai báo và nhập xuất dữ liệu Lệnh xuất một chuỗi ra màn hình: phương thức print, cú pháp như sau: System.out.print(StringValue);/* Xuất chuỗi StringValue ra màn hình và không xuống dòng */ System.out.println(StringValue); /* Xuất chuỗi StringValue ra màn hình và xuống dòng */ Ví dụ: System.out.print(“The answer is, ”);//Xuất ra chuỗi “The answer is, ” 2.7 Khai báo và nhập xuất dữ liệu Lệnh nhập một giá trị vào từ bàn phím: Tạo các đối tượng của các lớp từ các lớp nguyên thuỷ hơn Sử dụng phương thức nhập dữ liệu. 2.7 Khai báo và nhập xuất dữ liệu Ví dụ: /* Khai báo inStream của lớp InputStreamReader*/ InputStreamReader inStream; /* Nhập dữ liệu vào đối tượng inStream */ inStream = new InputStreamReader(System.in); BufferedReader inData = new BufferedReader(inStream); /* Nhập dữ liệu vào đối tượng inData */ inData = new BuffredReader(new InputStreamReader(System.in)); // Lưu trữ một dòng văn bản vào biến oneLine String oneLine = inData.readLine(); 2.7 Khai báo và nhập xuất dữ liệu Sử dụng đối tượng Scanner: Ví dụ nhập hai số nguyên a và b và xuất ra tổng import java.util.Scanner; public class InTong{ 	public static void main(String[] args){ 	Scanner s = new Scanner(System.in); 	int a = s.nextInt();	int b = s.nextInt(); 	int c = a + b; 	System.out.print(“Tong la:” + c); 	} } Câu hỏi và bài tập Sự khác nhau giữa mã máy và mã Byte? Các công đoạn máy ảo Java thực hiện trong việc biên dịch và thông dịch là gì? Viết chương trình xuất dòng chữ “Welcome to Java” ra màn hình. Mọi chương trình Java đều chứa ít nhất bao nhiêu phương thức? Hãy viết một khai báo hằng Java để tên ZED sẽ cho giá trị ‘z’. Hãy khai báo một biến char tên là letter và một biến String tên street. Câu hỏi và bài tập Có bao nhiêu ký tự có thể được lưu trữ trong một biến kiểu char? Có bao nhiêu ký tự trong một xâu (string) rỗng? Một biến thuộc lớp String có thể được gán vào một biến biến kiểu char, đúng hay sai? Sự khác nhau giữa chuỗi tự nhiên “computer” và định danh “computer” là gì? Câu hỏi và bài tập Đầu ra của đoạn mã sau là gì? (Tất cả các biến đều thuộc lớp String) 	street = “Elm St.”; 	address = “142B”; 	city = “Amaryllis”; 	state = “Ioma”; 	streetAddress = address + “ “ + street; 	System.out.println(streetAddress); 	System.out.println(city); 	System.out.println(“,” + state); 

File đính kèm:

  • pptLập trình Java cơ bản - Chương 2_Ngôn ngữ lập trình Java.ppt
Tài liệu liên quan