• 第6次作业--static关键字、对象


    题目1:编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。

    代码及注释

    1.JieCheng包内

    package JieCheng;           //打包
    
    public class Computer {      //创建Computer类
    
     public int getSum(int n){        //创建求阶乘和方法
    	 int k=1,sum=0;              //定义变量,并初始化
    	 for(int i=1;i<=n;i++)
    	 {
    		 k*=i;
    		 sum+=k;               //循环求阶乘
    	 } 
    	 return sum;                //返回sum值
     }       
    }
    

    2.ChenHong包内

    package ChenHong;        //打包
    import JieCheng.Computer;    //引入阶乘包
    import java.util.Scanner;          //引入输入包
    public class App {                  //创建App主类
    
    	public static void main(String[] args) {      //创建主方法
    		Computer c=new Computer();         //创建对象c
    		Scanner r=new Scanner(System.in);     
    		System.out.println("请选择输入1到几的阶乘和:");    //输出
    		int n;
    		n=r.nextInt();      //从键盘获取输入数
    		System.out.println("阶乘和为"+c.getSum(n));     //输出
    	}
    }
    

    程序运行结果

    题目2:设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:两个私有成员变量x和y表示坐标值;成员变量x和y的访问器和修改器无参构造方法创建点(0,0);一个有参构造方法,根据参数指定坐标创建一个点;distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。

    代码及注释

    1.MyPoint类

    package ChenHong;              //打包            
    public class MyPoint {            //创建MyPoint类
    		private double x;
    		private double y;       //定义私有成员变量x,y
    		public double getX() {      //设置x,y的访问器和修改器
    			return x;
    		}
    		public void setX(double x) {
    			this.x = x;
    		}
    		public double getY() {
    			return y;
    		}
    		public void setY(double y) {
    			this.y = y;
    		}                              
    		MyPoint(){          //创建无参构造方法,定义(0,0)
    	        x=0;
    	        y=0;
    		}
    		 MyPoint(double x,double y){      //创建有参构造方法,根据参数指定坐标创建一个点
    		        this.x=x;
    		        this.y=y;
    		        }
    		 static double distance(MyPoint p1,MyPoint p2){    //定义distance方法,求两点间距离
    		        double x1=p1.getX();
    		        double x2=p2.getX();
    		        double y1=p1.getY();
    		        double y2=p2.getY();
    		        return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));          //返回
    		}
    }
    

    2.Test主类

    package ChenHong;           //打包
    import java.util.Scanner;       //引用输入包
    public class Test {                 //创建主类Test
    
    	public static void main(String[] args) {         //定义主方法
    		double x1,x2,y1,y2;                             //定义变量
    		Scanner r=new Scanner(System.in);      //从键盘获取输入坐标
    		System.out.println("请输入第一个点横纵坐标:");       //输出提示
    		x1=r.nextDouble();
    		y1=r.nextDouble();
    		System.out.println("请输入第二个点横纵坐标:");
    		x2=r.nextDouble();
    		y2=r.nextDouble();
    		MyPoint p1=new MyPoint(x1,x2);           //创建对象p1,p2
    		MyPoint p2=new MyPoint(y1,y2);
    		System.out.println("这两个点之间的距离为:"+p1.distance( p1, p2));       //通过对象p1调用distance方法求p1,p2两点间距离
    	}
    }
    

    程序运行结果

  • 相关阅读:
    备忘
    基于ZooKeeper实现分布式锁
    git 使用ssh密钥
    git 的安装及使用
    sqlalchemy 使用pymysql连接mysql 1366错误
    SQL语句及5.7.2 mysql 用户管理
    C 实现快速排序
    C 实现冒泡排序
    C 实现选择排序
    sqlalchemy orm 操作 MySQL
  • 原文地址:https://www.cnblogs.com/ctt886/p/11562539.html
Copyright © 2020-2023  润新知