Hiển thị các bài đăng có nhãn Java. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Java. Hiển thị tất cả bài đăng

Thứ Ba, 27 tháng 11, 2012

Đề kiểm tra java kèm code đáp án

1.Tạo 1 interface tên opp có 2 phương thức
Nhap();
HienThi();
2.Tạo lớp abstract absNguoi kế thừa opp

 


6.Xây dựng menu với các chức năng sau:
1 . Nhập vào thông tin các lớp học
2. Xem thông tin chi tiết từng lớp
3. Loại bỏ 1 lớp học
4. Chuyển lớp 1 học sinh
5.Thoát

CODE

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package opp;
import java.util.*;
/**
 *
 * @author tien-www.kenhdaihoc.com
 */
interface iInOut{
    public void Nhap();
    public void Hienthi();
}
abstract class absNguoi implements iInOut{
    private String ten,diachi,tuoi;
    public void setTen(String Ten){
        this.ten=Ten;
    }
    public String getTen(){
        return this.ten;
    }
    public void setDiaChi(String diachi){
        this.diachi=diachi;
    }
    public String getDiaChi(){
        return this.diachi;
    }
    public void setTuoi(String tuoi){
        this.tuoi=tuoi;
    }
    public String getTuoi(){
        return this.tuoi;
    }
}
class clsSinhVien extends absNguoi{
    String masv;
    public void setMasv(String masv){
        this.masv=masv;
    }
    public String getMasv(){
        return this.masv;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\n\tMã sinh viên: ");
        setMasv(sc.nextLine());
        System.out.print("\n\tTên sinh viên: ");
        setTen(sc.nextLine());
        System.out.print("\n\tĐịa chỉ sinh viên: ");
        setDiaChi(sc.nextLine());
        System.out.print("\n\tTuổi sinh viên: ");
        setTuoi(sc.nextLine());
    }
    public void Hienthi(){
        System.out.print("\n\t"+getMasv()+"\t"+getTen()+"\t"+getDiaChi()+"\t"+getTuoi());
    }            
}
class clsGiaoVien extends absNguoi{
    String Magv,MaNgach;
    public void setMagv(String magv){
        this.Magv=magv;
    }
    public String getMagv(){
        return this.Magv;
    }
    public void setMaNgach(String mangach){
        this.MaNgach=mangach;
    }
    public String getMaNgach(){
        return this.MaNgach;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\n\tMã giáo viên: ");
        setMagv(sc.nextLine());
        System.out.print("\n\tMã ngạch giáo viên: ");
        setMaNgach(sc.nextLine());
        System.out.print("\n\tTên giáo viên: ");
        setTen(sc.nextLine());
        System.out.print("\n\tĐịa chỉ giáo viên: ");
        setDiaChi(sc.nextLine());
        System.out.print("\n\tTuổi giáo viên: ");
        setTuoi(sc.nextLine());
    }
    public void Hienthi(){
        System.out.print("\n\t"+getMagv()+"\t"+getMaNgach()+"\t"+getTen()+"\t"+getDiaChi()+"\t"+getTuoi());
    }    
}
class clsLop{
    String malop,tenlop;
    clsGiaoVien gvcn=new clsGiaoVien();
    ArrayList<clsSinhVien> dssv=new ArrayList<clsSinhVien>();
    public void setMaLop(String malop){
        this.malop=malop;
    }
    public String getMaLop(){
        return this.malop;
    }
    public void setTenLop(String tenlop){
        this.tenlop=tenlop;
    }
    public String getTenLop(){
        return this.tenlop;
    }
    public void setGV(clsGiaoVien gv){
        gvcn=gv;
    }
    public clsGiaoVien getGV(){
        return this.gvcn;
    }
    public void setdssv(clsSinhVien sv){
        dssv.add(sv);
    }
    public ArrayList<clsSinhVien> getdssv(){
        return this.dssv;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\nNhập vào mã lớp: ");
        setMaLop(sc.nextLine());
        System.out.print("\nNhập vào tên lớp: ");
        setTenLop(sc.nextLine());
        System.out.print("\nNhập vào thông tin giáo viên: ");
        gvcn.Nhap();
        System.out.print("\nNhập vào danh sách sinh viên: ");
        int nhap;
        do{
            clsSinhVien sv=new clsSinhVien();
            sv.Nhap();
            dssv.add(sv);
            System.out.print("\nBấm 0 để dừng nhập danh sách sinh viên: ");
            nhap=sc.nextInt();
        }while(nhap!=0);
        
    }
    public void HienThi(){
        System.out.print("\n"+getMaLop()+"\t"+getTenLop());
        gvcn.Hienthi();
        for(clsSinhVien sv:dssv){
            sv.Hienthi();
        }
    }
    
}
public class Opp {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner sc=new Scanner(System.in);
        ArrayList<clsLop> dslop=new ArrayList<clsLop>();
        int chon;
        do{
            System.out.println("\n------MENU--------");
            System.out.println("\n1.Nhập vào thông tin các lớp học");
            System.out.println("2.Xem thông tin từng lớp");
            System.out.println("3.Loại bỏ 1 lớp học");
            System.out.println("4.Chuyển lớp 1 học sinh");
            System.out.println("5.Thoát");
            chon=sc.nextInt();
            switch(chon){
                case 1:
                    int chon1;
                    do{
                        clsLop l=new clsLop();
                        l.Nhap();
                        dslop.add(l);
                        System.out.println("Bấm 0 để dừng nhập danh sách lớp: ");
                        chon1=sc.nextInt();
                    }while(chon1!=0);                 
                break;
                case 2:
                    for(clsLop l:dslop){
                        l.HienThi();
                    }
                break;
                case 3:
                    System.out.println("Nhập vào mã lớp cần xóa");
                    sc.nextLine();
                    String mlop=sc.nextLine();
                    for(clsLop l:dslop){
                        if(mlop.equals(l.getMaLop())){
                            dslop.remove(l);
                        }
                    }
                    break;
                case 4:                    
                    String malop,masv,malopden;
                    System.out.println("Nhập vào mã lớp: ");
                    sc.nextLine();
                    malop=sc.nextLine();
                    clsSinhVien sinhvien=new clsSinhVien();
                    for(clsLop l:dslop){
                        if(malop.equals(l.getMaLop())){
                            System.out.println("Nhập vào mã sinh viên cần chuyển: ");
                            masv=sc.nextLine();
                            for(clsSinhVien sv:l.getdssv()){
                                if(masv.equals(sv.getMasv())){
                                    sinhvien=sv;
                                    l.dssv.remove(sv);
                                }
                            }
                        }
                    }
                    //ma lop chuyen den
                    System.out.println("Nhập vào mã lớp chuyển đến");
                    malopden=sc.nextLine();
                    for(clsLop l:dslop){
                        if(malopden.equals(l.getMaLop())){
                            l.setdssv(sinhvien);
                        }
                    }                    
                    break;
            }
        }while(chon!=5);
    }
}