Tổng quan lập trình java Chương 1:giới thiệu về ngôn ngữ lập trình java Chương 2:tổng quan về cách tiếp cận hướng đối tượng Chương 3:những khái niệm cơ bản về lập trình hướng đối tư
Trang 1Lập trình Java cơ bản
Giang thị Hằng Nguyễn thị Ngân Nguyễn phương Thu
Trang 2Tổng quan lập trình java
Chương 1:giới thiệu về ngôn ngữ lập trình java
Chương 2:tổng quan về cách tiếp cận hướng đối tượng
Chương 3:những khái niệm cơ bản về lập trình hướng đối tượng
Trang 3Chương 1:giới thiệu về ngôn ngữ lập trình java
Giới thiệu ngôn ngữ Java
Đặc trưng của ngôn ngữ Java
Kiến trúc của Java
Nội dung một chương trình Java cơ bản
Các kiểu dữ liệu cơ bản & toán tử
Các cấu trúc điều khiển
Nhập,in dữ liệu từ bàn phím
Các ví dụ
Trang 4Giới thiệu ngôn ngữ Java
Lịch sử phát triển của Java
minh”
dụng khác nhau: cơ sở dữ liệu, mạng, Internet, viễn thông
Trang 5Đặc trưng của ngôn ngữ Java
Trang 6Kiến trúc chương trình Java
Phần khai báo tên gói (khối) bằng từ khoá package.
Phần khai báo thư viện tham khảo bằng từ khoá import.
Phần khai báo nội dung lớp bằng từ khoá class.
Trang 7Kiến trúc của Java
Java Platform
– Java Virtual Machine (Java VM)
– Java Application Programming Interface (Java API)
Hardware-Platform
Java VM Java API
myProgram.java
Java Platform
Mã nguồn
Trang 8Kiến trúc của Java
Java Development Kit – JDK
– Bộ công cụ phát triển Java (jdk) gồm trình biên dịch, thông dịch, trợ giúp, soạn tài liệu… và các thư viện chuẩn
– Ngoài ra còn một số thư viện khác như JSP,
JavaMail, Java TAPI…
– 1995: Version JDK 1.0
– 1998: Version JDK 1.2 (Java 2 nd Platform)
– 2004: Version JDK 1.5
Trang 9Phát triển ứng dụng Java
Hai loại ứng dụng Java
– Application: Ứng dụng độc lập
– Applet: Ứng dụng chạy trên Web
Thư viện lớp Java
– Bộ JDK bao gồm rất nhiều lớp chuẩn đã được xây dựng sẵn
– Lập trình viên thường sử dụng các lớp chuẩn để phát triển ứng dụng
Trang 10-javac Hello.java
java Hello
01001011
Trang 11Một chương trình Java cơ bản
1 // Tên file : Hello.java
2 /*
3
4 public class Hello
5 {
6 // Phương thức main, điểm bắt đầu của chương trình
7 public static void main( String args[ ] )
bỏ qua những dòng có dấu chú thích
Điểm bắt đầu và kết thúc của lớp
Phương thức main() sẽ được gọi đầu tiên Mỗi CT thực thi phải có một
phương thức main() Hiển thị dãy ký tự ra màn hình
Trang 12Một chương trình Java cơ bản
Ví dụ một chương trình Java mẫu:
import java.awt.*; // Khai báo tên thư viện sẵn có, nếu cần dùng
class className // Khai báo tên lớp
{
int var; // Khai báo biến
public void methodName() // Khai báo tên phương thức
{
System.out.println(“chao cac ban!”); // Lệnh thực hiện
}
}
Trang 13Các kiểu dữ liệu cơ bản
Java có hai kiểu dữ liệu
– Dữ liệu gốc chuẩn: Là các kiểu dữ liệu đã được định nghĩa trong ngôn ngữ như số nguyên, số thực, ký tự, logic
– Dữ liệu dẫn xuất: Do người dùng tự định nghĩa như mảng, lớp, giao tiếp
Ví dụ khai báo biến
– int x;
– Double a;
– Person ps;
Trang 14Các kiểu dữ liệu cơ bản
Kiểu Kích thước Khoảng giá trị
Trang 15Các kiểu dữ liệu cơ bản
Kiểu boolean: Nhận giá trị true hoặc false
Kiểu char: Kiểu ký tự theo chuẩn Unicode
Trang 16Các kiểu dữ liệu cơ bản
Kiểu mảng
– Khai báo: int[] iarray; hoặc int iarray[];
– Cấp phát: iarray = new int[100];
– Khởi tạo:
int[] iarray = {1, 2, 3, 5, 6};
char[] carray = {‘a’, ‘b’, ‘c’};
Chú ý: Luôn khởi tạo hoặc cấp phát mảng trước khi sử dụng
– Một số khai báo không hợp lệ:
int[5] iarray;
int iarray[5];
Trang 17Các kiểu dữ liệu cơ bản
Trang 18Các kiểu dữ liệu cơ bản
Quy tắc đặt tên biến
hoặc một dấu dollard ($)
gạch dưới
– Chú ý: Java phân biệt chữ hoa chữ thường
Trang 20Nhập,in dữ liệu từ bàn phím
Cách 1:sử dụng lớp BufferReader.
BufferReader là một lớp dùng để đọc dữ liều từ bàn phím hay từ file.
Có thể dùng lớp này để đọc một chuỗi một mảng hoặc một kí tự.
Tham số đầu vào của BufferReader có thể là
InputStreamReader hoặc FileReader (Dùng để
đọc file).
Một số phương thức của lớp BufferReader:
- read() : đọc một kí tự.
- readLine() : đọc một dòng text.
Trang 21public class GetInputFromKeyboard {
public static void main(String[] args) {
// Tạo một đối tượng BufferedReader
BufferedReader dataIn = new
BufferedReader(new
InputStreamReader( System.in) );
Trang 23Nhập ,in dữ liệu tù bàn phím
Cách 2:sử dụng JOptionPane
JOptionPane là một lớp thừa kế từ lớp
JComponent.
Khi biên dịch program thì nó sẽ hiện lên một
dialog box cho phép cho ta nhập dữ liệu
Một số phương thữ của JOptionPane:
- showConfirmDialog() : Hiển thị một câu hỏi lựa chọn giống như yes no cancel
- showInputDialog() : Hiển thị box nhập
- showMessageDialog() : Báo cho người dùng một sự kiện vừa xảy ra.
Trang 24String msg = "Hello " + name + "!";
JOptionPane.showMessageDialog(null, msg); System.out.println("Name is:"+msg);
}
}
Trang 26Nhập in dữ liệu từ bàn phím
Ví dụ:
import java.util.Scanner;
public class GetInputFromKeyboard {
public static void main(String[] args) {
// Tạo một đối tượng Scanner
Scanner scanIn=new Scanner(System.in);
Trang 28Nhập in dữ liệu từ bàn phím
Chú ý:
Nếu bạn dùng BufferReader hoặc JOptionPane thì
dữ liệu bạn nhập vào chỉ có kiểu String.Nên dù bạn
có nhập 10 hay 1000 thì nó cũng chỉ là String và
hiển nhiên là ko dùng để tính toán được.
Vd:Giải phương trình bậc 2 mà chỉ toàn String thì tính làm sao ra nghiệm.muốn tính được nghiệm ta phải chuyển kiểu cho dữ liệu ban đầu, Để chuyển
ta dùng lớp Integer và phương thức pareInt().
Trang 29Các cấu trúc lệnh trên Java
Java cung cấp hai loại cấu trúc điều khiển:
Trang 30Các cấu trúc điều khiển
1 Câu lệnh if- else
Condition: Biểu thức boolean như toán tử so sánh.
action 1: Khối lệnh được thực thi khi giá trị điều kiện là True
action 2: Khối lệnh được thực thi nếu điều kiện trả về giá trị False
Trang 31Các cấu trúc điều khiển
else System.out.println(“Hom nay khong la chu nhat\n" );
}
Trang 32Các cấu trúc điều khiển
Trang 332 Câu lệnh switch-case
expression - Biến chứa một giá trị xác định
value1,value 2,….valueN: Các giá trị hằng số
action1,action2…actionN: Khối lệnh được thực thi khi trường hợp tương ứng có giá trị True
break: Từ khoá được sử dụng để bỏ qua tất cả các câu lệnh sau đó
default: Từ khóa tuỳ chọn được sử dụng để chỉ rõ các câu lệnh nào được thực hiện chỉ khi tất cả các trường hợp nhận giá trị False
default - action: Khối lệnh được thực hiện chỉ khi tất cả các trường hợp nhận giá trị False
Trang 34Các cấu trúc điều khiển
Trang 35Các cấu trúc điều khiển
Lệnh switch
switch(c)
{
case 'a': case 'e': case 'i': case 'o': case 'u':
System.out.println("Ky tu nay la nguyen am");
Trang 36Các cấu trúc điều khiển
condition: có giá trị bool; vòng lặp sẽ tiếp tục cho nếu điều kiện vẫn có giá trị True.
action statement: Khối lệnh được thực hiện nếu condition nhận giá trị True
Trang 37Các cấu trúc điều khiển
Trang 38Các cấu trúc điều khiển
4 Vòng lặp do-while
Cú pháp:
do{
action statements;//khối lệnh }while(condition); // biểu thức boolean
condition: Biểu thức bool; vòng lặp sẽ tiếp tục khi mà điều kiện vẫn có giá trị True.
action statement: Khối lệnh luôn được thực hiện
ở lần thứ nhất, từ vòng lặp thứ hai, chúng được thực hiện khi condition nhận giá trị True.
Trang 39Các cấu trúc điều khiển
Trang 40Các cấu trúc điều khiển
Trang 41Các cấu trúc điều khiển
Trang 42Chương 2:tổng quan về cách lập trình hướng đối tượng
I PHƯƠNG PHÁP TIẾP CẬN CỦA LẬP TRÌNH TRUYỀN
THỐNG
Lập trình tuyến tính
Lập trình cấu trúc
Trang 43– Ưu điểm: Chương trình đơn giản, dễ hiểu
– Nhược điểm: Không thể dùng được trong các ứng dụng phức tạp
Trang 442 Lập trình cấu trúc
Đặc trưng
Tính chất
tư duy giải thuật rõ ràng.
không phù hợp với các phần mềm lớn.
Trang 45II PHƯƠNG PHÁP TIẾP CẬN HƯỚNG ĐỐI TƯỢNG
Phương pháp lập trình hướng đối tượng
Phương pháp phân tích và thiết kế hướng đối tượng
Trang 461 Phương pháp lập trình hướng đối tượng
Trang 472 Phương pháp phân tích và thiết kế hướng đối tượng
Pha phân tích
Pha thiết kế
Trang 48Các ví dụ
1.Nhập và in ra màn hình 1 xâu ký tự:
import java.io.*;
public class inxau {
public static void main(String[] args) throws Exception {
BufferedReader in = new BufferedReader(new
Trang 49Các ví dụ
2.Tính tổng của 2 số nguyên nhập từ bàn phím
Trang 50Các ví dụ
3.Giải Pt bậc nhất
import java.io.*;
public class giaiptbac1 {
public static void main(String[] args) throws Exception {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("giai phuong trinh bac
nhat co dang ax+b = 0");
System.out.print("nhap he so a:");
float a = Float.parseFloat( in.readLine());
Trang 51
if(b!=0) System.out.println("phuong trinh vo nghiem");
Trang 52Ví dụ
4.Tim UCLN,BCLN