Inheritance 从一个课堂中获取输入并在本课中使用

Inheritance 从一个课堂中获取输入并在本课中使用,inheritance,packages,Inheritance,Packages,我想在同一个包中编写两个程序。在这个包中,第一个类只有输入数据。第二个类从第一个类中获取这个输入,第二个类中的所有方法都用于这个输入 例如: Package ex; class A{ public static void main(String args[]){ int a,b,c; Scanner s = new Scanner(System.in); System.out.println("Enter a value:");

我想在同一个包中编写两个程序。在这个包中,第一个类只有输入数据。第二个类从第一个类中获取这个输入,第二个类中的所有方法都用于这个输入

例如:

Package ex;
    class A{
     public static void main(String args[]){
        int a,b,c;
        Scanner s = new Scanner(System.in);
        System.out.println("Enter a value:");
        a=s.next();
        System.out.println("Enter b value:");
        b=s.next();
      }   
    }
    class B extends A{
        void Add(){
         c=a+b;
         System.out.println(C);
         }
        void Sub(){
          c=a-b;
          System.out.println(c);
    }    
    }

现在正在创建另一个包,并且正在导入此包:
在package ex上,我们有两个类,第一个类包含输入,第二个类包含方法。 在包ex2上,我们导入包ex并创建一个对象,通过使用这个对象访问方法。这是行不通的。
我刚试过,我知道这不是程序。你能帮我一下吗首先,你不需要有两个主要的函数,你只需要有一个JVM的起点,你的加法类中的那个起点就可以提供服务。 然后将这些整数a、b和c传递给扩展它的a类或b类。 您可以在此处阅读有关java构造函数的更多信息:

因此,您的A类将类似于:

class A{
int a,b,c;
public A(int a,int b,int c)
{
this.a = a;
this.b = b;
this.c = c;
}
}

class B extends A
{
public B(int a, int b,int c)
{
super(a,b,c);
}
void Add(){
this.c=this.a+this.b;
System.out.println(this.c);
}
void Sub(){
this.c=this.a-this.b;
System.out.println(this.c);
}

然后可以像上面那样调用Addition类。在加法类中,您将调用Scanner方法来获取a、b的输入

我找到了解决办法。这就是确切的解决办法。但代码行数很高。我会用另一种方式思考。你们能帮我吗?这有什么逻辑吗

package org.maths;

import java.util.Scanner;

public class InputData {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int x,y;
        Scanner s = new Scanner(System.in);
        System.out.println("Enter A:");
        x=s.nextInt();
        System.out.println("Enter B:");
        y=s.nextInt();
        Methods mm = new Methods();
        mm.add(x, y);
        mm.sub(x, y);
    }

}

package org.maths;

public class Methods extends InputData {

    int z;
    public void add(int x, int y){
        z=x+y;
        System.out.println("Addition of two numbers:"+" "+z);
    }
    public void sub(int x, int y){
        z=x-y;
        System.out.println("Substarction of two numbers:"+" "+z);
    }

}


 package org.ex;
    import java.util.Scanner;
    import org.maths.*;
    public class Ex1 {

        public static void main(String[] args) {
            // TODO Auto-generated method stub

            //System.out.println("Akhil");
            int x,y;
            Scanner s = new Scanner(System.in);
            System.out.println("A");
            x=s.nextInt();
            System.out.println("B");
            y=s.nextInt();
            Methods m = new Methods();
            m.add(x, y);
        }

    }
package org.maths;

import java.util.Scanner;

public class InputData {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int x,y;
        Scanner s = new Scanner(System.in);
        System.out.println("Enter A:");
        x=s.nextInt();
        System.out.println("Enter B:");
        y=s.nextInt();
        Methods mm = new Methods();
        mm.add(x, y);
        mm.sub(x, y);
    }

}

package org.maths;

public class Methods extends InputData {

    int z;
    public void add(int x, int y){
        z=x+y;
        System.out.println("Addition of two numbers:"+" "+z);
    }
    public void sub(int x, int y){
        z=x-y;
        System.out.println("Substarction of two numbers:"+" "+z);
    }

}


 package org.ex;
    import java.util.Scanner;
    import org.maths.*;
    public class Ex1 {

        public static void main(String[] args) {
            // TODO Auto-generated method stub

            //System.out.println("Akhil");
            int x,y;
            Scanner s = new Scanner(System.in);
            System.out.println("A");
            x=s.nextInt();
            System.out.println("B");
            y=s.nextInt();
            Methods m = new Methods();
            m.add(x, y);
        }

    }