美文网首页
4.2四则运算器(25分)

4.2四则运算器(25分)

作者: Celia_QAQ | 来源:发表于2019-03-18 17:25 被阅读0次

设计一个类,名为NumOP,类中提供四个静态成员方法,访问修饰符均为public,能够实现对两个整数进行四则运算,即 :

求和 add

求差 subtract

求积 multiply

求商 div

按照如下要求定义主方法:

在NumOP类中定义主方法main,用户可通过用户界面输入两整数,分别依次调用四方法,输出结果

定义一个新的类TestOP,实现同样的功能,依次调用四方法,分别输出


java中static使用之静态方法注意点 - 我是坏男孩 - 博客园

java-源文件中可以有多个类,但是最多只能有一个public修饰 - 心香 - 博客园

https://zhidao.baidu.com/question/326542735.html


如果是同一个包的话,调用是比较简单的,主要看类里面数据的权限修饰符。

一 访问权限修饰符修饰成员变量和方法

  public:表明该成员变量和方法是共有的,能在任何情况下被访问。

  protected:必须在同一包中才能被访问。(说的比较简单,看个例子就明白了)

  Java代码

 class A

  {

  protected int weight ;

  protected int f( int a,int b )

  {

  // 方法体

  }

  }

  假设B与A在同一个包中,则

  Java代码

 class B

  {

  void g()

  {

  A a=new A();

  A.weight=100;//合法

  A.f(3,4); //合法

  }

  }

  特别说明:什么是在同一个包中?

  答:用package打包在一起的class ,叫在同一个包中。(不明白,举个例子)

eg:在JDK的src\java\io中,你会看到许多java类,第一句源代码都是package java.io;

  没有使用package打包的,在同一目录下的类也会被视做同一个包。

  friendly:在这种情况下中,同protected。区别在第二和第三种情况中。

例子:

public class A{

int num ;

public void print(){

System.out.println(num) ;

}

}

public class B{

public static void main(String[] args){

A a = new A() ;

a.num = 10 ; //操作数据

a.print() ; //调用方法

}

}


  Java代码

 class A

  {

  int weight ;

  int f( int a,int b )

  {

  // 方法体

  }

  }

  假设B与A在同一个包中,则

  Java代码

  class B

  {

  void g()

  {

  A a=new A();

  A.weight=100;//合法

  A.f(3,4); //合法

  }

  }

  private: 只能在本类中访问。

  Java代码

 class Test

  {

  private int money;

  Test()

  {

  money=2000;

  }

  private int getMoney()

  {

  return money;

  }

  public static void main(String args[])

  {

  Test te=new Test();

  te.money=3000; //合法

  int m=te.getMoney(); //合法

  System.out.println("money="+m);

  }

  }

  PS: 实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。

import java.util.Scanner;

public class NumOp

{

public static int add(int a,int b){

return a+b;

}

public static int subtract(int a,int b){

if(a>b)return a-b;

else return b-a;

}

public static int multiply(int a,int b){

return a*b;

}

public static double div(int a,int b){

if(a>b) return a/b;

else return b/a;

}

public static void main(String[] args){

Scanner scan = new Scanner(System.in);

int a=scan.nextInt();

int b=scan.nextInt();

System.out.print("1:");

System.out.println(add(a,b));

System.out.print("2:");

System.out.println(subtract(a,b));

System.out.print("3:");

System.out.println(multiply(a,b));

System.out.print("4:");

System.out.println(div(a,b));

}

}

//------------------------------------

class TestOp

{

public static void main(String[] args){

Scanner scan = new Scanner(System.in);

int c=scan.nextInt();

int d=scan.nextInt();

System.out.print("1:");

System.out.println(NumOp.add(c,d));//同一个包不同类的互相引用

System.out.print("2:");

System.out.println(NumOp.subtract(c,d));

System.out.print("3:");

System.out.println(NumOp.multiply(c,d));

System.out.print("4:");

System.out.println(NumOp.div(c,d));

}

}

//----------------------------------------

相关文章

网友评论

      本文标题:4.2四则运算器(25分)

      本文链接:https://www.haomeiwen.com/subject/hjvvmqtx.html