正方形 类

7-1 正方形类

分数 25

全屏浏览

切换布局

作者 ami

单位 临沂大学

定义一个正方形类square,在次类中包括写内容:

  1. 定义成员变量边长private int edge;
  2. 定义方法:包括构造方法,setter getter方法,求面积方法等,要求如下所示:
    1. 定义正方形类的构造方法:在构造方法中给edge赋值为2,并添加System.out.println("this is constructor method");
    2. 为成员变量edge设置set方法,用来接收用户给edge的值,如果用户给的值<=0,则设置edge值为1
    3. 为成员变量edge设置get方法,用来返回edge的值
    4. 完成求面积方法,得到正方形的面积:public int getArea()

定义类Main,并在main方法中, 1.首先创建正方形对象s1,然后通过getEdge()方法输出edge的值,然后调用getArea方法求出s1的面积并输出
2.创建正方形对象s2,并通过键盘输入s2对象的边的值,然后通过getEdge()方法输出edge的值,然后调用getArea方法求出s1的面积并输出

输入格式:

输入在一行中给出边的值。

输出格式:

输出s1对象的边、输出s1对象的面积
输出s2对象的边、s2对象的面积

输入样例:

在这里给出一组输入。例如:

3
-5

 答案:两种方法

方法一:由于输出案列S1都是一样的,所以可以直接在构造方法中直接输出S1,然后在创建类S2进行调用方法来输出。


import java.util.Scanner;
public class Main{
    public static void main(String args[]){
        int edge;
        Scanner shuru=new Scanner(System.in);
        square s2=new square();//创建对象 类名+对象名字。
        edge=shuru.nextInt();//从键盘输入实参
        s2.setEdge( edge);
        int m=s2.getEdge();
        int n=s2.getArea();
        System.out.println("s2:edge="+m);
        System.out.println("s2:area="+n);
    }
}
class square{
    private int edge;
    square(){
    System.out.println("this is constructor method");
    System.out.println("s1:edge=2");
    System.out.println("s1:area=4");

    System.out.println("this is constructor method");
    }
    void setEdge(int edge){//this.edge表示类中的成员变量private int edge;
        if(edge<=0){
            this.edge=1;
        }
        else{this.edge=edge;}//edge表示实参传入的变量。
    }
    int getEdge(){
        return this.edge;
    }
    public  int getArea(){
        this.edge=edge;
        int result=edge*this.edge;
        return result;
    }
}

方法二:

 

import java.util.Scanner;
public class Main{
    public static void main(String args[]){
        int edge;
        Scanner shuru=new Scanner(System.in);
        square s1=new square();
        s1.setEdge(2);//由于题目没说s1需要从键盘输入所以由案列直接把2传入即可。
        int p=s1.getEdge();
        int w=s1.getArea();
        System.out.println("s1:edge="+p);
        System.out.println("s1:area="+w);
        square s2=new square();
        edge=shuru.nextInt();

        s2.setEdge( edge);
        int m=s2.getEdge();
        int n=s2.getArea();
        System.out.println("s2:edge="+m);
        System.out.println("s2:area="+n);
    }
}
class square{
    private int edge;
    square(){
        System.out.println("this is constructor method");
    }
    void setEdge(int edge){
        if(edge<=0){
            this.edge=1;
        }
        else{this.edge=edge;}
    }
    int getEdge(){
        return this.edge;
    }
    public  int getArea(){
        this.edge=edge;
        int result=edge*this.edge;
        return result;
    }
}
  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值