new để tạo đối tượng từ lớp.Bước 1:
DemoOOP
lop và test
Bước 2: Click phải chuột vào package lop và tạo class đặt tên SinhVien
package lop;
class SinhVien {
// Thuộc tính
String hoTen;
int tuoi;
// Phương thức
void hienThiThongTin() {
System.out.println("Họ tên: " + hoTen + ", Tuổi: " + tuoi);
}
}
Bước 3: Click phải chuột vào package test và tạo class đặt tên TestSinhVien
package test;
import lop.SinhVien;
public class TestSinhVien {
public static void main(String[] args) {
// Tạo đối tượng sinh viên
SinhVien sv1 = new SinhVien();
sv1.hoTen = "Nguyễn Văn A";
sv1.tuoi = 20;
// Gọi phương thức
sv1.hienThiThongTin();
}
}
Bước 4: Chạy class TestSinhVien bằng cách nhấn F11 hoặc click phải chuột giữa class và chọn Run as -> 1. Java Application
👉 Kết quả:
Họ tên: Nguyễn Văn A, Tuổi: 20
HocSinh với thuộc tính: tên, điểm toán, điểm văn.Gợi ý code:
package lop
package test
package lop;
class HocSinh {
String ten;
double diemToan;
double diemVan;
void hienThi() {
System.out.println("Tên: " + ten + ", Toán: " + diemToan + ", Văn: " + diemVan);
}
}
package test;
import lop.HocSinh;
public class BaiTap1 {
public static void main(String[] args) {
HocSinh hs1 = new HocSinh();
hs1.ten = "Nguyễn Văn A";
hs1.diemToan = 8.5;
hs1.diemVan = 7.0;
HocSinh hs2 = new HocSinh();
hs2.ten = "Trần Thị B";
hs2.diemToan = 6.5;
hs2.diemVan = 8.0;
hs1.hienThi();
hs2.hienThi();
}
}
HocSinh: thêm phương thức tinhDiemTrungBinh().Gợi ý code:
package test
package lop;
class HocSinh2 {
String ten;
double diemToan;
double diemVan;
double tinhDiemTrungBinh() {
return (diemToan + diemVan) / 2;
}
void hienThi() {
System.out.println("Tên: " + ten + ", Điểm TB: " + tinhDiemTrungBinh());
}
}
package test;
import lop.HocSinh2;
public class BaiTap2 {
public static void main(String[] args) {
HocSinh2 hs = new HocSinh2();
hs.ten = "Nguyễn Văn C";
hs.diemToan = 9.0;
hs.diemVan = 7.5;
hs.hienThi();
}
}
Gợi ý code:
package lop
package test
package lop;
class HinhChuNhat {
double chieuDai;
double chieuRong;
double tinhDienTich() {
return chieuDai * chieuRong;
}
double tinhChuVi() {
return (chieuDai + chieuRong) * 2;
}
}
package test;
import lop.HinhChuNhat;
public class BaiTap3 {
public static void main(String[] args) {
HinhChuNhat hcn1 = new HinhChuNhat();
hcn1.chieuDai = 5;
hcn1.chieuRong = 3;
HinhChuNhat hcn2 = new HinhChuNhat();
hcn2.chieuDai = 4;
hcn2.chieuRong = 6;
System.out.println("Hình 1 - Diện tích: " + hcn1.tinhDienTich() + ", Chu vi: " + hcn1.tinhChuVi());
System.out.println("Hình 2 - Diện tích: " + hcn2.tinhDienTich() + ", Chu vi: " + hcn2.tinhChuVi());
if (hcn1.tinhDienTich() > hcn2.tinhDienTich()) {
System.out.println("Hình 1 có diện tích lớn hơn.");
} else if (hcn1.tinhDienTich() < hcn2.tinhDienTich()) {
System.out.println("Hình 2 có diện tích lớn hơn.");
} else {
System.out.println("Hai hình có diện tích bằng nhau.");
}
}
}
Gợi ý code:
package lop
package test
package lop;
class NhanVien {
String hoTen;
double luongCoBan;
double heSo;
double tinhLuong() {
return luongCoBan * heSo;
}
}
package test;
import java.util.Scanner;
import lop.NhanVien;
public class BaiTap4 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
NhanVien[] ds = new NhanVien[3];
for (int i = 0; i < 3; i++) {
ds[i] = new NhanVien();
System.out.println("Nhập thông tin nhân viên " + (i+1));
System.out.print("Họ tên: ");
ds[i].hoTen = sc.nextLine();
System.out.print("Lương cơ bản: ");
ds[i].luongCoBan = sc.nextDouble();
System.out.print("Hệ số: ");
ds[i].heSo = sc.nextDouble();
sc.nextLine(); // bỏ dòng
}
NhanVien max = ds[0];
for (int i = 1; i < 3; i++) {
if (ds[i].tinhLuong() > max.tinhLuong()) {
max = ds[i];
}
}
System.out.println("Nhân viên có lương cao nhất: " + max.hoTen + " - " + max.tinhLuong());
sc.close();
}
}
Sach với các thuộc tính: tên sách, tác giả, giá.ThuVien chứa danh sách các sách (dùng ArrayList).Gợi ý code:
Sach và ThuVien trong package lop
package test
package lop;
class Sach {
String tenSach;
String tacGia;
double gia;
void hienThi() {
System.out.println("Tên sách: " + tenSach + ", Tác giả: " + tacGia + ", Giá: " + gia);
}
}
package lop;
class ThuVien {
ArrayList<Sach> danhSach = new ArrayList<>();
void themSach(Sach s) {
danhSach.add(s);
}
void hienThiTatCa() {
for (Sach s : danhSach) {
s.hienThi();
}
}
void timSachTheoTen(String ten) {
boolean found = false;
for (Sach s : danhSach) {
if (s.tenSach.equalsIgnoreCase(ten)) {
s.hienThi();
found = true;
}
}
if (!found) {
System.out.println("Không tìm thấy sách có tên: " + ten);
}
}
}
package test;
import java.util.ArrayList;
import java.util.Scanner;
import lop.ThuVien;
import lop.Sach;
public class BaiTap5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
ThuVien tv = new ThuVien();
while (true) {
System.out.println("\n--- MENU ---");
System.out.println("1. Thêm sách");
System.out.println("2. Hiển thị tất cả sách");
System.out.println("3. Tìm sách theo tên");
System.out.println("4. Thoát");
System.out.print("Chọn: ");
int chon = sc.nextInt();
sc.nextLine();
switch (chon) {
case 1:
Sach s = new Sach();
System.out.print("Tên sách: ");
s.tenSach = sc.nextLine();
System.out.print("Tác giả: ");
s.tacGia = sc.nextLine();
System.out.print("Giá: ");
s.gia = sc.nextDouble();
sc.nextLine();
tv.themSach(s);
break;
case 2:
tv.hienThiTatCa();
break;
case 3:
System.out.print("Nhập tên sách cần tìm: ");
String ten = sc.nextLine();
tv.timSachTheoTen(ten);
break;
case 4:
System.out.println("Thoát chương trình.");
sc.close();
return;
default:
System.out.println("Chọn sai, vui lòng nhập lại.");
}
}
}
}