Bài tập kế thừa hình tròn + hình chữ nhật - lập trình Java căn bản - Đề 2
- Tạo một lớp Shape gồm 1 hàm tạo và các phương thức trừu tượng tinhChuVi, tinhDienTich
- Tạo lớp HinhTron kế thừa từ lớp Shape gồm có tham số radius
--> Viết 2 hàm tạo và getter/setter tương ứng
--> Viết code cho các hàm tinhChuVi và tinhDienTich của hình tròn
- Tạo lớp HinhChuNhat kế thừa từ lớp Shape gồm 2 tham số width và height
--> Viết 2 hàm tạo và getter/setter tương ứng
-> Viết code cho các hàm tinhChuVi và tinhDienTich của hình chữ nhật tương ứng
Yêu cầu :
Tạo lớp Main thực hiện test chương trình.
Tạo 1 phương thức public static float tinhTongDienTich(Shape[] list) để tính tổng diện tích của tất cả các Shape trong mảng list
Thực hiện khai báo 1 đối tượng HinhTron và HinhChuNhat -> Sử dụng hàm tinhTongDienTich trên để tính tổng diện tích của HinhTron và HinhChuNhat trên. Hiển thị kết quả tính
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)
![Hoàng Anh [C2010G]](https://www.gravatar.com/avatar/e73c31efff649e599b1e4320b6bfb1a9.jpg?s=80&d=mm&r=g)
Hoàng Anh
2022-06-30 17:39:54
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package BaiTap.baitap1135;
/**
*
* @author by bom1
*/
public class HinhChuNhat extends Shape {
double width;
double height;
public HinhChuNhat() {
}
public HinhChuNhat(double width, double height) {
this.width = width;
this.height = height;
}
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
@Override
public double tinhChuVi() {
return (width + height) * 2;
}
@Override
public double tinhDienTich() {
return width * height;
}
}
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package BaiTap.baitap1135;
import java.util.Scanner;
/**
*
* @author by bom1
*/
public class HinhTron extends Shape {
double radius;
public HinhTron() {
}
public HinhTron(float radius) {
this.radius = radius;
}
public double getRadius() {
return radius;
}
public void setRadius(float radius) {
this.radius = radius;
}
public void input() {
Scanner input = new Scanner(System.in);
System.out.println("Nhập giá trị của bán kính hình tròn: ");
radius = Double.parseDouble(input.nextLine());
}
@Override
public double tinhChuVi() {
return 2 * Math.PI * radius;
}
@Override
public double tinhDienTich() {
return Math.PI * radius * radius;
}
}
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package BaiTap.baitap1135;
/**
*
* @author by bom1
*/
public class Main {
public static void main(String[] args) {
HinhTron ht = new HinhTron(3);
HinhChuNhat hcn = new HinhChuNhat(4,9);
Shape[] List = new Shape[2];
List[0] = ht;
List[1] = hcn;
double tong = tinhTongDienTich(List);
System.out.println("Diện tích hình tròn là: " + ht.tinhDienTich());
System.out.println("Diện tích hình chữ nhật là: " + hcn.tinhDienTich());
System.out.println("Tổng diện tích: " + tong);
}
public static double tinhTongDienTich(Shape[] list){
double tongDienTich = 0;
for (Shape shape : list){
tongDienTich += shape.tinhDienTich();
}
return tongDienTich;
}
}
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package BaiTap.baitap1135;
/**
*
* @author by bom1
*/
public class Shape {
public Shape() {
}
public double tinhChuVi(){
return 0;
}
public double tinhDienTich(){
return 0;
}
}
![Nguyễn Lương Trung [java1_online]](https://www.gravatar.com/avatar/d4ccad8dcfa4ddaf674838c9c54cf647.jpg?s=80&d=mm&r=g)
Nguyễn Lương Trung
2022-06-10 13:30:18
Em cần source code của bài này ạ, video hướng dẫn bị lỗi tiếng ạ