java5
7-1Ring类设计
7-1 Ring类设计
编写一个圆环类Ring的Java程序。
a定义圆环类的2个数据成员,分别是内半径innerRadius,外半径outerRadius,这些属性通过get和set方法进行封装。
b 定义圆环类有参构造方法Ring(int innerRadius,int outerRadius),在有参构造方法中加入System.out.println(“constructor”);
c完成无参构造方法Ring(),要求在无参构造方法中使用this调用有参构造方法给两个半径赋值(外半径赋值3,内半径赋值1)
d 圆环类中定义 public int getArea()方法可以返回其面积。面积求出后强制转换为整型值返回,π使用Math.PI表示。
在Main类中先生成一个圆环类对象,这个圆环的两个半径通过键盘读入,调用求面积方法求出面积后,输出面积。
然后再次定义一个圆环对象,调用无参构造方法,调用求面积方法求出面积后,输出面积。
输入格式:
输入在一行中先给出内半径,再给出外半径。
输出格式:
在一行中输出圆环的面积。
import java.util.Scanner;
class Ring{
int innerRadius;
int outerRadiu;
public int getInnerRadius() {
return innerRadius;
}
public void setInnerRadius(int innerRadius) {
this.innerRadius = innerRadius;
}
public int getOuterRadiu() {
return outerRadiu;
}
public void setOuterRadiu(int outerRadiu) {
this.outerRadiu = outerRadiu;
}
Ring(){
this.innerRadius = 1;
this.outerRadiu = 3;
System.out.println("constructor");
}
Ring(int innerRadius2,int outerRadius){
this.innerRadius = innerRadius2;
this.outerRadiu = outerRadius;
System.out.println("constructor");
}
public int getArea(){
return (int)((this.outerRadiu*this.outerRadiu-this.innerRadius*this.innerRadius)*Math.PI);
}
}
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int innerRadius = scan.nextInt();
int outerRadius = scan.nextInt();
Ring p = new Ring(innerRadius,outerRadius);
System.out.println(p.getArea());
Ring p1 = new Ring();
System.out.println(p1.getArea());
}
}
7-2 圆柱体类设计
定义一个圆柱类Cylinder
里面包含私有属性 private int radius(半径),height(高)
为属性完成其setter getter方法
完成带参构造方法Cylinder(int radius,height),该方法中包含一句System.out.println(“Constructor with para”);
完成无参构造方法Cylinder(),在无参构造方法中调用有参构造方法,为半径和高赋值为2,1,该方法包含一句System.out.println(“Constructor no para”);
完成求体积方法 public int getVolumn(){} 求圆柱体积,π使用Math.PI
定义测试类Main,在main方法中,按照顺序要求完成下列操作
从键盘接收两个数,第一个为半径,第二个为高,并利用刚才输出两个数创建圆柱体对象c1,求c1的体积并输出。
使用无参构造方法 创建第二个圆柱体对象c2,求c2的体积并输出。
输入格式:
在一行中输入半径 和高。
输出格式:
对每一个圆柱体输出它的体积
import java.util.Scanner;
class Cylinder{
private int radius;
private int height;
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
Cylinder(){
this.radius = 2;
this.height = 1;
System.out.println("Constructor no para");
}
Cylinder(int radius,int height){
this.radius = radius;
this.height = height;
System.out.println("Constructor with para");
}
public int getVolumn(){
return (int)(this.radius*this.radius*Math.PI*this.height);
}
}
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int radius = scan.nextInt();
int height = scan.nextInt();
Cylinder c1 = new Cylinder(radius,height);
System.out.println(c1.getVolumn());
System.out.println("Constructor with para");
Cylinder c2 = new Cylinder();
System.out.println(c2.getVolumn());
}
}
7-3 正方形类
定义一个正方形类square,在次类中包括写内容:
定义成员变量边长private int edge;
定义方法:包括构造方法,setter getter方法,求面积方法等,要求如下所示:
定义正方形类的构造方法:在构造方法中给edge赋值为2,并添加System.out.println(“this is constructor method”);
为成员变量edge设置set方法,用来接收用户给edge的值,如果用户给的值<=0,则设置edge值为1
为成员变量edge设置get方法,用来返回edge的值
完成求面积方法,得到正方形的面积:public int getArea()
定义类Main,并在main方法中, 1.首先创建正方形对象s1,然后通过getEdge()方法输出edge的值,然后调用getArea方法求出s1的面积并输出
2.创建正方形对象s2,并通过键盘输入s2对象的边的值,然后通过getEdge()方法输出edge的值,然后调用getArea方法求出s1的面积并输出
输入格式:
输入在一行中给出边的值。
输出格式:
输出s1对象的边、输出s1对象的面积 输出s2对象的边、s2对象的面积
import java.util.Scanner;
class square{
private int edge;
square(){
edge=2;
System.out.println("this is constructor method");
}
void setEdge(int edge){
if(edge<=0){
this.edge=1;}
else{
this.edge=edge;}
}
int getEdge(){
return edge;
}
public int getArea(){
return edge*edge;
}
}
public class Main{
public static void main(String args[]){
square s1=new square();
System.out.println("s1:edge="+s1.getEdge());
System.out.println("s1:area="+s1.getArea());
square s2=new square();
Scanner sc=new Scanner(System.in);
s2.setEdge(sc.nextInt());
System.out.println("s2:edge="+s2.getEdge());
System.out.println("s2:area="+s2.getArea());
}
}
7-4 Circle类
a 定义圆类Circle,其中包括:
成员变量定义 private int radius
方法定义 包括下列要求
定义无参构造方法 ,给radius赋值为2,并添加语句System.out.println(“this is a constructor”);
定义有参构造方法 ,接收用户给给radius赋值,如果用户输入半径为<=0,则让半径的值为2,并添加语句System.out.println(“this is a constructor with para”);
为radius半径添加setter方法,接收用户输入的半径,如果用户输入半径为<=0,则让半径的值为2
为radius半径添加getter方法,返回用户输入的半径
定义求面积方法public int gerArea(),π使用Math.PI代替,面积的结果强制转换为int返回
定义toString方法,public String toString( )方法体为:
return “Circle [radius=” + radius + “]”;
b定义Main类,在main方法中,完成下列操作
.定义并创建Circle的第一个对象c1,并使用println方法输出c1
求c1的面积并输出
定义并创建Circle的第一个对象c2,并使用println方法输出c2
从键盘接收整数半径,并赋值给c2的半径,使用println方法输出c2
求c2的面积并输出
从键盘接收整数半径,并创建Circle的第三个对象c3,并将用户输入整数半径通过有参构造方法传递给出c3,使用println方法输出c3
求c3的面积并输出
输入格式:
从键盘输入一个整数半径
输出格式:
分别输出c1和c2对象的信息
import java.util.Scanner;
class Circle{
private int radius;
Circle(){
radius = 2;
System.out.println("this is a constructor");
}
Circle(int radius){
if(radius <=<