Khóa học free Bài 17: Nạp chồng phương thức (overloading method) trong Java

Thảo luận trong 'Java cơ bản' bắt đầu bởi Tiasangmoi92, 15/7/13.

  1. Tiasangmoi92

    Tiasangmoi92 Super Moderator

    Lượt xem: 17,000
    /* Bài viết thuộc loạt bài hướng dẫn trong "Khóa Học Lập Trình Java Miễn Phí"
    trên diễn đàn Android.Vn, bạn có thể vào đây đọc

    để hiểu hơn về khóa học và tham gia ngay cùng mọi người;) */

    overloading method in java
    Khi yêu cầu 3 con vật cùng 1 yêu cầu "speak", 3 con vật trả lại 3 kết quả khác nhau! :D

    1, Khái niệm nạp chồng phương thức overloading method:

    Việc khai báo trong một lớp nhiều phương thức có cùng tên nhưng khác tham số (khác kiểu dữ liệu, khác số lượng tham số) gọi là khai báo chồng phương thức (overloading method).

    2, Ví dụ:

    Overloading method dùng làm gì?, ta xét bài tập nhỏ:
    Tính diện tích hình vuông, tính diện tích hình hình chữ nhật, tính diện tích hình tam giác.
    Ta sẽ tạo ra 3 phương thức đều tên là dienTich sao cho, nếu như
    Có 1 tham số truyền vào, nó sẽ tự hiểu là cần tính diện tích hình vuông
    Có 2 tham số truyền vào, nó tự hiểu là tính diện tích hình chữ nhật
    Có 3 tham số truyền vào, nó tự hiểu là tính diện tích hình tam giác.
    Code:
    PHP:
    package javademoandroidvn;
     
    class 
    Hinh {
     
        public 
    float dienTich(float a) {
            return (float) 
    a;
        }
     
        public 
    float dienTich(float afloat b) {
            return (float) 
    b;
        }
     
        public 
    double dienTich(float afloat bfloat c) {
            
    float p;
            
    = (float) (c) / 2;
            return 
    Math.sqrt(* (a) * (b) * (c));
        }
    }
     
    public class 
    JavaDemoAndroidVn {
     
        public static 
    void main(String[] args) {
            
    Hinh h = new Hinh();
            
    System.out.println("Diện tích hình vuông có cạnh 2 : " h.dienTich(2));
            
    System.out.println("Diện tích hình chữ nhật có 2 cạnh là 4 và 5 : " h.dienTich(45));
            
    System.out.println("Diện tích hình tam giác có 3 cạnh là 3, 4, 5 : " h.dienTich(345));
        }
    }
    Tham khảo thêm 2 video bên blog StudyAndShare:




    [​IMG]

    Bài tập về nhà::D

    Bài 1: Class hàng hóa gồm các thuộc tính: mã hàng, tên hàng, giá, số lượng.
    Tạo phương thức tính tiền tổng hóa đơn hàng hóa đó với 2 tham số truyền vào là giá, và số lượng.
    Tạo phương thức nạp chồng phương thức trên, có thêm tham số truyền vào nữa là % giảm giá. Tính tiền dựa vào các thông số này!
    Tạo đối tượng dựa và class trên và hiện thị thông tin hóa đơn ra ngoài theo từng trường hợp!

    (Chú ý: Các bạn nên tự giác làm bài tập, hoàn thiện rồi đăng lên, các bài bạn đã làm, nên để code trong thẻ code - chọn thẻ PHP cho rõ ràng và để ẩn code trong thẻ ẩn spoiler, để khi click vào mới hiện code lên , trước khi thử sức tự làm, bạn không nên nhìn code của các bạn khác đã đăng nhé;))

    [​IMG]

    Bài viết đăng lên diễn đàn khác vui lòng ghi rõ nguồn: Android.Vn
    overloading method in java, overloading method trong java, overloading java, overload in java, overload java, nạp chồng phương thức trong java, phương thức nạp chồng java, khóa học java, khóa học lập trình java, khóa học java giá rẻ
  2. diepthanh94

    diepthanh94 New Member

    e thấy bài tập về nhà này đề nó sao sao ý :)
    Quagn1998 thích bài này.
  3. Tiasangmoi92

    Tiasangmoi92 Super Moderator

    Thank em đã đóng góp, sửa lại cho rõ ràng rồi nhé!
    tuanleedragon, Quagn1998diepthanh94 thích bài này.
  4. Quagn1998

    Quagn1998 New Member

    Không biết đúng không nhỉ? Code của em:
    Show Spoiler

    PHP:
    package unit17_napchong;
     
    import java.util.Scanner;
     
    class 
    HangHoa {
        private 
    String maHangtenHang;
        private 
    long giasoLuongthanhTien;
        private 
    float giamGia;
     
        public 
    String getMaHang() {
            return 
    maHang;
        }
     
        public 
    void setMaHang(String maHang) {
            
    this.maHang maHang;
        }
     
        public 
    String getTenHang() {
            return 
    tenHang;
        }
     
        public 
    void setTenHang(String tenHang) {
            
    this.tenHang tenHang;
        }
     
        public 
    long getGia() {
            return 
    gia;
        }
     
        public 
    void setGia(long gia) {
            
    this.gia gia;
        }
     
        public 
    long getSoLuong() {
            return 
    soLuong;
        }
     
        public 
    void setSoLuong(long soLuong) {
            
    this.soLuong soLuong;
        }
     
        public 
    float getGiamGia() {
            return 
    giamGia;
        }
     
        public 
    void setGiamGia(float giamGia) {
            
    this.giamGia giamGia;
        }
     
        public 
    void setThanhTien(long thanhTien) {
            
    this.thanhTien thanhTien;
        }
     
        public 
    long getThanhTien() {
            return 
    thanhTien;
        }
     
        public 
    long tinhTien(long gialong soLuong) {
            return 
    gia soLuong;
        }
     
        public 
    long tinhTien(long gialong soLuongfloat giamGia) {
            return (
    long) ((longgia soLuong * (100.00 giamGia) / 100);
        }
     
        public 
    void Input() {
            
    Scanner inp = new Scanner(System.in);
            
    System.out.print("Nhập mã hàng: ");
            
    setMaHang(inp.next());
            
    System.out.print("Nhập tên hàng: ");
            
    setTenHang(inp.next());
            
    System.out.print("Nhập giá: ");
            
    setGia(inp.nextLong());
            
    System.out.print("Nhập số lượng: ");
            
    setSoLuong(inp.nextLong());
            
    System.out.print("Nhập % giảm giá: ");
            
    setGiamGia(inp.nextFloat());
        }
     
        public 
    void Output() {
            
    System.out.println("Mã hàng: " getMaHang() + " Tên hàng: "
                    
    getTenHang());
            
    System.out.println("Giá: " getGia() + " Số lượng: " getSoLuong());
            if (
    giamGia == 0.0) {
                
    setThanhTien(tinhTien(giasoLuong));
            } else {
                
    setThanhTien(tinhTien(giasoLuonggiamGia));
            }
            
    System.out.print("Thành tiền: " getThanhTien());
        }
    }
     
    public class 
    QuanLyBanHang {
        public static 
    void main(String[] args) {
            
    HangHoa a = new HangHoa();
            
    a.Input();
            
    a.Output();
        }
    }
    tuanleedragonTiasangmoi92 thích bài này.
  5. rockman1510

    rockman1510 New Member

    Lần đầu post bài, có gì mọi người chỉ giáo :D
    Show Spoiler

    PHP:
    /*
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    */
    package learning.basic;
     
    import java.util.Scanner;
     
    /**
    *
    * @author Le Van Huy
    */
    public class Overload_Good {
     
        public 
    String seri;
        public 
    String name;
        private 
    int pricenumber;
        private 
    float sale;
     
        public 
    int getNumber() {
            return 
    number;
        }
     
        public 
    void setNumber(int number) {
            
    this.number number;
        }
     
        public 
    int getPrice() {
            return 
    price;
        }
     
        public 
    void setPrice(int price) {
            
    this.price price;
        }
     
        public 
    float getSale() {
            return 
    sale;
        }
     
        public 
    void setSale(float sale) {
            
    this.sale sale;
        }
                 
        public 
    int total(int setPrice,int setNumber){
            return 
    price number;
        }
     
        public 
    float total(int setPriceint setNumberfloat setSale){
            return (float) ((
    price number) - (price number) * sale);
        }
     
        public 
    void input(){
            
    Scanner input = new Scanner(System.in);
            
    System.out.print("Let put seri of good: ");
            
    seri input.nextLine();
            
    System.out.print("Let put name of good: ");
            
    name input.nextLine();
            
    System.out.print("Let put price of good: ");
            
    setPrice(input.nextInt());
            
    System.out.print("Let put number want to buy: ");
            
    setNumber(input.nextInt());
            
    System.out.print("Let put sale of this good: ");
            
    setSale(input.nextFloat());
        } 
     
        public 
    void output(){
            
    System.out.println("Seri: " seri);
            
    System.out.println("Name: " name);
            
    System.out.println("Price: " getPrice());
            
    System.out.println("Number: " getNumber());
            
    System.out.println("Sale: " getSale() + "( if 5 and over)");
            
    System.out.println("//----------------------------------------//");
            if (
    number >= 5){
            
    System.out.println("Total (sale "getSale() + " %): "total(pricenumbersale) + " VND");
            }
            else
            
    System.out.println("Total (not sale): " total(pricenumber) + " VND");
        }
     
        public static 
    void main (String [] args){
            
    Overload_Good a = new Overload_Good();
            
    a.input();
            
    System.out.println("//----------------------------------------//");
            
    a.output();
        }
    }
    Tiasangmoi92 thích bài này.
  6. tiennguyen

    tiennguyen New Member

    Mình nộp bài, các bạn xem giúp mình với.
    Show Spoiler

    PHP:
    package bai17;
     
    import java.util.Scanner;
     
    public class 
    overloading_method {
     
        
    /**
        * @param args
        */
        
    public static void main(String[] args) {
            
    // TODO Auto-generated method stub
            
    int pt=0;
            
    Scanner it=new Scanner(System.in);
            
    hanghoa hh=new hanghoa();
            
    hh.input();
            
    System.out.println("Hang duoc giam gia (%): ");
            
    pt=it.nextInt();
            
    hh.display();
            if(
    pt!=0){
                
    System.out.println("Mat hang co duoc giam gia: "+pt+"%.");
                
    System.out.println("Ban phai tra: "+hh.tinhtien(hh.getGia(), hh.getSoluong(), pt)+" VND");
            }
            else{
                
    System.out.println("Mat hang khong duoc giam gia.");
                
    System.out.println("Ban phai tra: "+hh.tinhtien(hh.getGia(), hh.getSoluong())+" VND");
            }   
        }
    }
    class 
    hanghoa{
        private 
    String mahang,tenhang;
        private 
    float gia;
        private 
    int soluong;
       
        public 
    String getMahang() {
            return 
    mahang;
        }
        public 
    void setMahang(String mahang) {
            
    this.mahang mahang;
        }
        public 
    String getTenhang() {
            return 
    tenhang;
        }
        public 
    void setTenhang(String tenhang) {
            
    this.tenhang tenhang;
        }
        public 
    float getGia() {
            return 
    gia;
        }
        public 
    void setGia(float gia) {
            
    this.gia gia;
        }
        public 
    int getSoluong() {
            return 
    soluong;
        }
        public 
    void setSoluong(int soluong) {
            
    this.soluong soluong;
        }
       
        public 
    float tinhtien(float gia,int soluong){
            return 
    gia*soluong;
        }
        public 
    float tinhtien(float gia,int soluong,int giamgia){
            return 
    gia*soluong-(giamgia*gia*soluong)/100;
        }
        public 
    void input(){
            
    Scanner ipt=new Scanner(System.in);
            
    System.out.print("Nhap ma hang: ");
            
    mahang=ipt.nextLine();
            
    System.out.print("Nhap ten mat hang: ");
            
    tenhang=ipt.nextLine();
            
    System.out.print("Nhap gia: ");
            
    gia=ipt.nextFloat();
            
    System.out.print("Nhap so luong: ");
            
    soluong=ipt.nextInt();       
        }
        public 
    void display(){
            
    System.out.println("Ma hang: "+mahang);
            
    System.out.println("Mat hang: "+tenhang);
            
    System.out.println("Gia: "+gia);
            
    System.out.println("So luong: "+soluong);
            
    System.out.println("So tien mua: "+tinhtien(giasoluong)+" VND");   
        }
     
    }
    Tiasangmoi92 thích bài này.
  7. ocmitpro

    ocmitpro New Member

    mình đang cần cái này
  8. maket

    maket New Member

    hi! mềnh mới tham gia
    Mã:
    package ep7;
    import java.util.Scanner;
     
    class hanghoa{
        public String tenhang,masp;
        public int soluong;
        public float gia,giamgia;
        public float hoadon(int soluong, float gia,float giamgia){
            return(float) (soluong*gia*(100-giamgia)/100);
        }
        public float hoadon(int soluong, float gia){
            return(float) soluong*gia;
        }
    }
    public class vd {   
       
        public static void main(String[] args) {
            Scanner dl = new Scanner(System.in);
            hanghoa a= new hanghoa();
            System.out.print("Ten hang: ");
            a.tenhang = dl.nextLine();
            System.out.println("Ma hang: ");
            a.masp=dl.nextLine();
            System.out.print("Don gia: ");
            a.gia=dl.nextFloat();
            System.out.print("So luong: ");
            a.soluong=dl.nextInt();
            System.out.print("Giam gia: ");
            a.giamgia=dl.nextFloat();
           
            if(a.giamgia!=0){
                System.out.print("Tong gia: "+a.hoadon(a.soluong, a.gia, a.giamgia));
            }
            else{
                System.out.print("Tong gia: "+a.hoadon(a.soluong, a.gia));
            }
     
        }
     
    }
    
    Tiasangmoi92 thích bài này.
  9. dienlh93

    dienlh93 New Member

    class HangHoa{
    private String maHH,tenHH;​
    private int gia,soLuong;​
    HangHoa(){}​
    HangHoa(String tenhh,String mahh,int gia,int soluong){​
    this.tenHH=tenhh;​
    this.maHH=mahh;​
    this.gia=gia;​
    this.soLuong=soluong;​
    }​
    public int HoaDon(int gia,int soluong){​
    return gia*soluong;​
    }​
    public float HoaDon(int gia,int soluong,float giamgia){​
    return gia*(1-giamgia)*soluong;​
    }​
    public void NhapTT(){​
    this.maHH="STTH";​
    this.tenHH="Vang9999";​
    this.soLuong=10;​
    this.gia=40;​
    }​
    public void InTT(){​
    System.out.println(HoaDon(this.gia,this.soLuong));​
    System.out.println(HoaDon(this.gia,this.soLuong,0.2f));​
    }​
    }
    public class QLHH {
    public static void main(String[] args){​
    HangHoa h=new HangHoa();​
    h.NhapTT();​
    h.InTT();​
    }​
    }
  10. Show Spoiler

    Mã:
    package javaandroid.vn;
     
    import java.util.Scanner;
     
    public class BTBai17 {
        private int mahang;
        private String tenhang;
        private float gia;
        private int soluong;
        private float giamgia;
       
        public float getGiamgia() {
            return giamgia;
        }
        public void setGiamgia(float giamgia) {
            this.giamgia = giamgia;
        }
        public int getMahang() {
            return mahang;
        }
        public void setMahang(int mahang) {
            this.mahang = mahang;
        }
        public String getTenhang() {
            return tenhang;
        }
        public void setTenhang(String tenhang) {
            this.tenhang = tenhang;
        }
        public float getGia() {
            return gia;
        }
        public void setGia(float gia) {
            this.gia = gia;
        }
        public int getSoluong() {
            return soluong;
        }
        public void setSoluong(int soluong) {
            this.soluong = soluong;
        }
        // tao phuong thuc
        public float tinhtien(float gia,int soluong)
        {
            return gia*soluong;
        }
        public float tinhtien(float gia,int soluong,float giamgia)
        {
            return gia*soluong*(100-giamgia)/100;
        }
        //tao cac doi tuong
        public static void main(String[]args){
            Scanner in=new Scanner(System.in);
            BTBai17 b=new BTBai17();
            System.out.println("Nhap vao thong tin: ");
            System.out.println("Ma hang : ");
            b.setMahang(in.nextInt());
            in.nextLine();
            System.out.println("Ten hang : ");
            b.setTenhang(in.nextLine());
            System.out.println("Gia : ");
            b.setGia(in.nextFloat());
            in.nextLine();
            System.out.println("So luong : ");
            b.setSoluong(in.nextInt());
            in.nextLine();
            System.out.println("Giam gia % : ");
            b.setGiamgia(in.nextFloat());
            in.nextLine();
           
            // in thong tin ra
            System.out.println("In ra thong tin: ");
            System.out.println("Ma hang : "+b.getMahang());
            System.out.println("Ten hang : "+b.getTenhang());
            System.out.println("Gia : "+b.getGia());
            System.out.println("So luong : "+b.getSoluong());
            if(b.getGiamgia()!=0)
            {
                System.out.println("TOng tien : "+b.tinhtien(b.getGia(), b.getSoluong(), b.getGiamgia()));
            }
            else
            {
                System.out.println("Tong tien : "+b.tinhtien(b.getGia(), b.getSoluong()));
            }
        }
    }
    
  11. KIetHoHoai

    KIetHoHoai New Member

    Show Spoiler

    PHP:
    bài này chỉ cần làm đơn giản để hiểu phương thức
    Overloading như thế nào thôi
    Như thế là đã đủ yêu
    cầu rồi
    .
    package Structure;
     
    class 
    Merchandise {
       
        
    float pricemount;
        
    String nameserri;
       
        public 
    void setNameSerri(String nameString serri) {
            
    this.name name;
            
    this.serri serri;
        }
       
        public 
    void setPriceMount(float pricefloat mount) {
            
    System.out.println("ThanhTien: "+(mount*price)); //+(this.price*this.mount);
        
    }
       
        public 
    void setPriceMount(float pricefloat mountfloat sale) {
            
    System.out.println("Sale: Total bill: "+(price*mount*sale ));
        }
    }
     
    public class 
    Product {
        public static 
    void main(String args []) {
           
            
    Merchandise product = new Merchandise();
            
    product.setPriceMount(80008);
            
    product.setPriceMount(80008, (float)95/100);
           
        }
    //Method Main.
    }//Class Product.
    Tiasangmoi92 thích bài này.
  12. KIetHoHoai

    KIetHoHoai New Member

    PHP:
    Khi thì chẳng úp được bài nàoLúc làm 1 lần 2 cái.
  13. haizax

    haizax New Member

    Show Spoiler

    PHP:
    //Class hàng hóa gồm các thuộc tính: mã hàng, tên hàng, giá, số lượng.
    //Tạo phương thức tính tiền tổng hóa đơn hàng hóa đó với 2 tham số truyền vào là giá, và số lượng.
    //Tạo phương thức nạp chồng phương thức trên, có thêm tham số truyền vào nữa là % giảm giá.
    //Tính tiền dựa vào các thông số này!
    //Tạo đối tượng dựa và class trên và hiện thị thông tin hóa đơn ra ngoài theo từng trường hợp!
     
     
    package bai17;
     
    import java.util.Scanner;
    public class 
    Bai17 {
     
     
        public static 
    void main(String[] args) {
            
    HangHoa a = new HangHoa();
            
    a.Nhap();
            
    a.showHD();
        }
    }
    class 
    HangHoa{
        private 
    String tenHang;
        private 
    String maHang;
        private 
    int soLuong;
        private 
    long giaHang;
        private 
    float giamGia;
     
        public 
    void setTenHang(String tenHang) {
            
    this.tenHang tenHang;
        }
     
        public 
    void setMaHang(String maHang) {
            
    this.maHang maHang;
        }
     
        public 
    void setSoLuong(int soLuong) {
            
    this.soLuong soLuong;
        }
     
        public 
    void setGiaHang(long giaHang) {
            
    this.giaHang giaHang;
        }
     
        public 
    String getTenHang() {
            return 
    tenHang;
        }
     
        public 
    String getMaHang() {
            return 
    maHang;
        }
     
        public 
    int getSoLuong() {
            return 
    soLuong;
        }
     
        public 
    long getGiaHang() {
            return 
    giaHang;
        }
     
        public 
    void setGiamGia(float giamGia) {
            
    this.giamGia giamGia;
        }
     
        public 
    float getGiamGia() {
            return 
    giamGia;
        }
       
        public 
    void Nhap(){
            
    Scanner in = new Scanner(System.in);
            
    System.out.println("Nhập Tên Hàng: ");
            
    setTenHang(in.nextLine());
            
    System.out.println("Nhập Mã Hàng: ");
            
    setMaHang(in.nextLine());
            
    System.out.println("Nhập Số Lượng: ");
            
    setSoLuong(in.nextInt());
            
    System.out.println("Nhập Giá: ");
            
    setGiaHang(in.nextLong());
            
    System.out.println("Giảm Giá: ");
            
    setGiamGia(in.nextFloat());
    }
        public 
    float tong(long giaHang,int soLuong){
            return (
    getGiaHang()*getSoLuong());
        }
        public 
    float tong(long giaHang,int soLuong,float giamGia){
            return ((
    getGiaHang()*getSoLuong())*(100-giamGia)/100);
        }
        public 
    void showHD(){
            
    System.out.println("Thông tin hàng");
            
    System.out.println("Tên Hàng: "+getTenHang()+"      -Mã Hàng: "+getMaHang());
            
    System.out.println("Số Lượng: "+getSoLuong()+"      -Giá Hàng: "+getGiaHang());
            
    System.out.println("Tổng khi chưa giảm giá: "+tong(giaHangsoLuong));
            
    System.out.println("Tổng khi giảm "+getGiamGia()+ " là: "+tong(giaHangsoLuonggiamGia));
        }
    }
  14. duytan248

    duytan248 New Member

    rất hay
  15. try_again

    try_again New Member

    Show Spoiler

    PHP:
    package abc;
     
    import java.util.*;
    class 
    HangHoa {
        public 
    String maHang;
        public 
    String tenHang;
        public 
    float gia;
        public 
    int soLuong;
        public 
    float phanTramGiam;
        public 
    float HoaDon(float gia,int soLuong){
            return 
    gia soLuong;
        }
       
        public 
    float HoaDon(float gia,int soLuong,float phanTramGiam){
            return 
    gia soLuong * (phanTramGiam/100);
        }
    }
    public class 
    BaiTap {
        public static 
    void main(String[] args) {
            
    HangHoa a = new HangHoa();
            
    Scanner nhapDuLieu = new Scanner(System.in);
            
    System.out.println("ten hang: ");
            
    a.tenHang nhapDuLieu.nextLine();
            
    System.out.println("ma hang: ");
            
    a.maHang nhapDuLieu.nextLine();
            
    System.out.println("don gia :");
            
    a.gia nhapDuLieu.nextFloat();
            
    System.out.println("so luong :");
            
    a.soLuong nhapDuLieu.nextInt();
            
    System.out.println("phan tram giam gia :");
            
    a.phanTramGiam nhapDuLieu.nextFloat();
           
           
            
    System.out.println("HOA DON");
            
    System.out.println("Ten Hang: "+a.tenHang);
            
    System.out.println("Ma hang "+a.maHang);
            
    System.out.println("Don Gia: "+a.gia);
            
    System.out.println("So Luong: "+a.soLuong);
            if(
    a.phanTramGiam ==){
                
    System.out.println("tong so tien phai tra :"+a.HoaDon(a.giaa.soLuong));
            }
            else
                
    System.out.println("tong so tien phai tra :"+a.HoaDon(a.giaa.soLuong,a.phanTramGiam));
           
     
        }
    }
     
    Tiasangmoi92 thích bài này.
  16. hanhnv87

    hanhnv87 New Member

    Đây là bài của mình, mong các bạn chỉ bảo: :D
    Show Spoiler

    PHP:
    package com.hanhnv.bai17;
     
    import java.util.Scanner;
     
    public class 
    Bai17 {
        public static 
    void main(String[] args) {
            
    Goods goods = new Goods();
            
    goods.inputGoods();
            
    goods.outputGoods();
        }
    }
     
    class 
    Goods {
        private 
    String goodsCodegoodsName;
        private 
    int goodsPrice;
        private 
    int goodsQuantity;
        private 
    int goodsDiscount;
     
        public 
    int getGoodsDiscount() {
            return 
    goodsDiscount;
        }
     
        public 
    void setGoodsDiscount(int goodsDiscount) {
            
    this.goodsDiscount goodsDiscount;
        }
     
        public 
    String getGoodsCode() {
            return 
    goodsCode;
        }
     
        public 
    void setGoodsCode(String goodsCode) {
            
    this.goodsCode goodsCode;
        }
     
        public 
    String getGoodsName() {
            return 
    goodsName;
        }
     
        public 
    void setGoodsName(String goodsName) {
            
    this.goodsName goodsName;
        }
     
        public 
    int getGoodsPrice() {
            return 
    goodsPrice;
        }
     
        public 
    void setGoodsPrice(int goodsPrice) {
            
    this.goodsPrice goodsPrice;
        }
     
        public 
    int getGoodsQuantity() {
            return 
    goodsQuantity;
        }
     
        public 
    void setGoodsQuantity(int goodsQuantity) {
            
    this.goodsQuantity goodsQuantity;
        }
     
        public 
    void inputGoods() {
            
    Scanner s = new Scanner(System.in);
            
    System.out.println("Please enter some information about goods!");
            
    System.out.println("Code of goods:");
            
    setGoodsCode(s.nextLine());
            
    System.out.println("Name of goods:");
            
    setGoodsName(s.nextLine());
            
    System.out.println("Quantity of goods:");
            
    setGoodsQuantity(s.nextInt());
            
    System.out.println("Price of goods:");
            
    setGoodsPrice(s.nextInt());
            
    System.out.println("Percentage of discount:");
            
    setGoodsDiscount(s.nextInt());
        }
     
        public 
    void outputGoods() {
            
    System.out.println("All information about goods you had entered:");
            
    System.out.println("Code of product: " getGoodsCode());
            
    System.out.println("Name of product: " getGoodsName());
            
    System.out.println("Quantity of product: " getGoodsQuantity());
            
    System.out.println("Price of product: " getGoodsPrice());
            
    System.out.println("Total money without discount: "
                    
    doSum(getGoodsQuantity(), getGoodsPrice()));
            
    System.out
                    
    .println("Total money after discount: "
                            
    doSum(getGoodsQuantity(), getGoodsPrice(),
                                    
    getGoodsDiscount()));
        }
     
        public 
    int doSum(int quantityint price) {
            
    int sum quantity price;
            return 
    sum;
        }
     
        public 
    int doSum(int quantityint priceint discount) {
            
    int sum = (quantity price) - (quantity price discount 100);
            return 
    sum;
        }
    }
    Tiasangmoi92 thích bài này.
  17. Kroes

    Kroes New Member


    bài của bạn này nếu có giảm giá sẽ tính sai giá tiền.

    PHP:
    return gia soLuong * (phanTramGiam/100);
    Câu lệnh này sẽ tính ra số tiền được giảm thôi chứ không phải tổng tiền phải thanh toán

    Đúng phải là
    PHP:
    gia soLuong  - (gia soLuong phanTramGiam/100)
     
    hoặc
     
    gia 
    soLuong * (phanTramGiam/100)
    tuanleedragon thích bài này.
  18. Kull_J

    Kull_J New Member

    Show Spoiler
    PHP:
    /*
        Class hàng hóa gồm các thuộc tính: mã hàng, tên hàng, giá, số lượng.
        Tạo phương thức tính tiền tổng hóa đơn hàng hóa đó với 2 tham số truyền vào là giá, và số lượng.
        Tạo phương thức nạp chồng phương thức trên, có thêm tham số truyền vào nữa là % giảm giá. Tính tiền dựa vào các thông số này!
        Tạo đối tượng dựa và class trên và hiện thị thông tin hóa đơn ra ngoài theo từng trường hợp!
    */
    package Demo_Overloading;
     
    import java.util.Scanner;
     
    class 
    Banhang
    {
        private 
    String maHang;
        private 
    String tenHang;
        private 
    long giaHang;
        private 
    int soLuong;
        private 
    float giamGia;
       
        private 
    long thanhTien;
     
        public 
    String getMaHang() {
            return 
    maHang;
        }
        public 
    String getTenHang() {
            return 
    tenHang;
        }
        public 
    long getGiaHang() {
            return 
    giaHang;
        }
        public 
    int getSoLuong() {
            return 
    soLuong;
        }
        public 
    float getGiamGia() {
            return 
    giamGia;
        }
        public 
    long getThanhTien(){
            return 
    thanhTien;
        }
       
        public 
    void setMaHang(String maHang) {
            
    this.maHang maHang;
        }
        public 
    void setTenHang(String tenHang) {
            
    this.tenHang tenHang;
        }
        public 
    void setGiaHang(long giaHang) {
            
    this.giaHang giaHang;
        }
        public 
    void setSoLuong(int soLuong) {
            
    this.soLuong soLuong;
        }
        public 
    void setGiamGia(float giamGia) {
            
    this.giamGia giamGia;
        }   
        public 
    void setThanhTien(long thanhTien) {
            
    this.thanhTien thanhTien;
        }
       
        public 
    long tinhtien (long giaHangint soLuong)
        {
            return (
    long) (giaHang*soLuong);
        }
        public 
    long tinhtien (long giaHangint soLuongfloat giamGia)
        {
            return (
    long) (giaHang*soLuong-(giaHang*soLuong*(giamGia/100)));
        }
     
        public 
    void input ()
        {
            
    Scanner input = new Scanner(System.in);
            
    System.out.println("Nhập thông tin hàng hóa");
            
    System.out.print("Nhập mã hàng: ");
            
    setMaHang (input.nextLine());
            
    System.out.print("Nhập tên hàng: ");
            
    setTenHang (input.nextLine());
            do
            {
                
    System.out.print("Nhập giá hàng: ");
                
    setGiaHang (input.nextLong());
            }while (
    giaHang <=0);
            do
            {
                
    System.out.print("Nhập số lượng: ");
                
    setSoLuong (input.nextInt());
            }while (
    soLuong<=0);
            
    System.out.print("Giảm giá: ");
            
    setGiamGia (input.nextFloat());
        }
       
        public 
    void output()
        {
            
    System.out.print("");
            
    System.out.print("=== Thông tin hàng hóa ===");
            
    System.out.print("\nMã hàng: "+getMaHang());
            
    System.out.print("\nTên hàng: "+getTenHang());
            
    System.out.print("\nGiá hàng: "+getGiaHang()+" VND / 1 đơn vị");
            
    System.out.print("\nSố lượng: "+getSoLuong());
            
    System.out.print("\nGiảm giá: "+getGiamGia()+" %");
           
            if (
    giamGia==|| giamGia==0.0 || giamGia==0f || giamGia==0.0f)
            {
                
    setThanhTien (tinhtien(giaHangsoLuong));
            }
            else
            {
                
    setThanhTien(tinhtien (giaHangsoLuonggiamGia));
            }
            
    System.out.print("\nThành tiền: " getThanhTien()+" VND");
            
    System.out.println("");
        } 
    }
     
    public class 
    Demo_Overloading {
        public static 
    void main(String[] args) {
            
    Banhang bh = new Banhang();
            
    bh.input();
            
    bh.output();
        }
    }
  19. asavin_99

    asavin_99 New Member

    Show Spoiler
    PHP:
    package HangHoa;
     
    import java.util.Scanner;
     
    public class 
    hanghoa {
       
        private 
    int maHang;
        private 
    String tenHang;
        private 
    float gia;
        private 
    int soLuong;
        private 
    int giamGia;
       
        public static 
    void main(String [] args){
           
            
    hanghoa h=new hanghoa();
            
    h.Input();
            
    h.Output();
        }
       
       
       
        public 
    int getMaHang() {
            return 
    maHang;
        }
     
     
     
        public 
    void setMaHang(int maHang) {
            
    this.maHang maHang;
        }
     
     
     
        public 
    String getTenHang() {
            return 
    tenHang;
        }
     
     
     
        public 
    void setTenHang(String tenHang) {
            
    this.tenHang tenHang;
        }
     
     
     
        public 
    float getGia() {
            return 
    gia;
        }
     
     
     
        public 
    void setGia(float gia) {
            
    this.gia gia;
        }
     
     
     
        public 
    int getSoLuong() {
            return 
    soLuong;
        }
     
     
     
        public 
    void setSoLuong(int soLuong) {
            
    this.soLuong soLuong;
        }
     
       
     
     
        public 
    int getGiamGia() {
            return 
    giamGia;
        }
     
     
     
        public 
    void setGiamGia(int giamGia) {
            
    this.giamGia giamGia;
        }
     
     
     
        public 
    float tongTien(float giaint soLuong){
            return 
    gia*soLuong;
        }
       
        public 
    float tongTien(float giaint soLuongint giamGia){
            return 
    gia*soLuong-gia*giamGia*soLuong/100;
        }
       
        public 
    void Input(){
            
    Scanner nhap=new Scanner(System.in);
            
    System.out.println("Nhap ma hang");
            
    setMaHang(nhap.nextInt());
            
    System.out.println("Nhap ten hang");
            
    setTenHang(nhap.next());
            
    System.out.println("Gia");
            
    setGia(nhap.nextFloat());
            
    System.out.println("So luong");
            
    setSoLuong(nhap.nextInt());
            
    System.out.println("Giam gia");
            
    setGiamGia(nhap.nextInt());
        }
       
        public 
    void Output(){
            
    System.out.println("Tong tien cua hang hoa khi chua giam gia la "+tongTien(giasoLuong));
            
    System.out.println("Tong tien cua hang hoa khi giam gia "+getGiamGia()+"% la "+tongTien(giasoLuonggiamGia));
        }
     
    }


    Mình mới tham gia mong mọi người giúp đỡ. thanks all!
  20. phamhaidang

    phamhaidang New Member

    class HangHoa:
    Show Spoiler
    PHP:
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.Scanner;
     
    public class 
    HangHoaDemo {
        private 
    String tenHang;
        private 
    String maHang;
        private 
    float donGia;
        private 
    int soLuong;
        private 
    float giamGia;
     
        
    Scanner input = new Scanner(System.in);
        
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
     
        public 
    HangHoaDemo() {
     
        }
     
        public 
    HangHoaDemo(String tenHangString maHangfloat donGiaint soLuong) {
            
    this.tenHang tenHang;
            
    this.maHang maHang;
            
    this.donGia donGia;
            
    this.soLuong soLuong;
        }
     
        public 
    String getTenHang() {
            return 
    tenHang;
        }
     
        public 
    void setTenHang(String tenHang) {
            
    this.tenHang tenHang;
        }
     
        public 
    String getMaHang() {
            return 
    maHang;
        }
     
        public 
    void setMaHang(String maHang) {
            
    this.maHang maHang;
        }
     
        public 
    float getDonGia() {
            return 
    donGia;
        }
     
        public 
    void setDonGia(float donGia) {
            
    this.donGia donGia;
        }
     
        public 
    int getSoLuong() {
            return 
    soLuong;
        }
     
        public 
    void setSoLuong(int soLuong) {
            
    this.soLuong soLuong;
        }
     
        public 
    float getGiamGia() {
            return 
    giamGia;
        }
     
        public 
    void setGiamGia(float giamGia) {
            
    this.giamGia giamGia;
        }
     
        public 
    void input() {
            try {
                
    System.out.print("Ten: ");
                
    setTenHang(br.readLine());
                
    System.out.print("Ma: ");
                
    setMaHang(br.readLine());
            } catch (
    IOException e) {
                
    // TODO Auto-generated catch block
                
    e.printStackTrace();
            }
            
    System.out.print("Don gia: ");
            
    setDonGia(input.nextFloat());
            
    System.out.print("So luong: ");
            
    setSoLuong(input.nextInt());
     
        }
     
        public 
    double tinhTien(float donGiaint soLuong) {
            return (
    getDonGia() * getSoLuong());
        }
     
        public 
    double tinhTien(float donGiaint soLuongfloat giamGia) {
     
            do {
                
    System.out.println("Giam gia: ");
                
    setGiamGia(input.nextFloat());
                if (
    getGiamGia() <= || getGiamGia() >= 1)
                    
    System.out.println("Nhap sai. Hay nhap lai");
            } while (
    getGiamGia() <= || getGiamGia() >= 1);
            return (double) (
    getDonGia() * getSoLuong() *(getGiamGia()));
        }
    }

    class main:
    Show Spoiler

    PHP:
    import java.util.Scanner;
     
    public class 
    main {
        public static 
    void main(String[] args) {
            
    HangHoaDemo hhd = new HangHoaDemo();
            
    Scanner input = new Scanner(System.in);
     
            
    hhd.input();
            
    System.out.println("Tien: "
                    
    hhd.tinhTien(hhd.getDonGia(), hhd.getSoLuong()));
            
    System.out.println("==========");
            
    hhd.input();
            
    System.out.println("Tien sau khi giam gia: "
                    
    hhd.tinhTien(hhd.getDonGia(), hhd.getSoLuong(),
                            
    hhd.getGiamGia()));
        }
    }

Chia sẻ trang này