zoukankan      html  css  js  c++  java
  • 20194653 面向对象基础3——static、this、包总结

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

    一、源程序

    1.computer.java

    /**
     * 创建一个computer类,类中包含getJC方法,其方法作用为求所传参数X的阶乘
     */
    package 阶乘;
    
    public class computer {
    	public	long getJC(long x){  //创建求阶乘方法
    		long p=1;
    	for (int i = 1; i <= x; i++) {
    		p*=i;
    		}
    	return p;
    	}
    }
    

    2.APP.java

    /**
     * 创建APP类类中包含主方法,主方法中用computer类中定义了一个对象T,由T调用computer类中getJC方法,
     * 求用户所输入数的阶乘
     */
    package APP;
    import java.util.Scanner;
    
    import 阶乘.computer;
    public class APP {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("请输入一个整数");
    		Scanner reader=new Scanner(System.in);
    		computer T=new computer();   //定义computer类的对象T
    		long p=reader.nextLong();    
    		System.out.println(T.getJC(p));  //调用computer类中求阶乘方法getJC
    		
    	}
    
    }
    

     二、运行结果

    题目2:

           设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:

    • 两个私有成员变量x和y表示坐标值;
    • 成员变量x和y的访问器和修改器
    • 无参构造方法创建点(0,0);
    • 一个有参构造方法,根据参数指定坐标创建一个点;
    • distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。

            编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。

    一、源程序

    1.mypoint.java

    /**
     * 创建mypoint类,请中包含下
     * x.y两个成员变量,接收两个点坐标,
     * x.y成员变量的修改器和访问器getX.setX.getY.setY
     * 两个构造方法,第一个为无参构造方法创建点(0,0),第二个为有参构造方法根据参数指定坐标创建一个点,
     * 一个distance方法求两个点之间的距离。
     * @author X1393
     *
     */
    public class mypoint {    
    	double x;     //定义成员变量X
    	double y;      //定义成员变量y
    	public double getX() {    //创建x访问器
    		return x;
    	}
    	public void setX(double x) {    //创建x修改器
    		this.x = x;
    	}
    	public double getY() {   //创建y访问器
    		return y;
    	}
    	public void setY(double y) {   //创建x修改器
    		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((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); } }

      

    2.Test.java 

    import java.util.Scanner;
    
    /**
     * 创建主方法其中包含以下部分
     * x1.x2.y1.y2四个变量接受两个点的四个坐标
     * 调用mypoint中distance方法求两个点距离
     * @author X1393
     *
     */
    public class Test {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("请输入两点坐标");
    		Scanner reader=new Scanner(System.in);
    		double x1=reader.nextDouble();   
    		double y1=reader.nextDouble();
    		double x2=reader.nextDouble();
    		double y2=reader.nextDouble();
    		mypoint T1=new mypoint();    //定义接收第一个点的对象T1
    		mypoint T2=new mypoint();    //定义接受第二个点的对象T2
    		T1.x=x1;
    		T1.y=y1;
    		T2.x=x2;
    		T2.y=y2;
    		System.out.println(mypoint.distance(T1, T2));  //调用distance方法求出两点之间距离
    	}
    
    }
    

     二、运行结果

  • 相关阅读:
    MVP福利利用Azure虚拟机玩Windows Server 2012
    负载均衡的基本算法
    RavenDB:基于Windows/.NET平台的NoSQL数据库
    使用Autofac在ASP.NET Web API上实现依赖注入
    Mono 3 的默认Gc是Sgen
    MSDN 杂志 Windows 8 特刊
    AggSharp Agg的.NET 移植
    使用谷歌翻译/微软翻译迅速使你的博客支持多国语言
    Service Bus for Windows server
    用Xwt构建跨平台应用程序[转载]
  • 原文地址:https://www.cnblogs.com/Xwwg/p/11541059.html
Copyright © 2011-2022 走看看