创建一个类Sum,编写出所有的数的相加的静态的重载方法,方法名为sum,
时间: 2024-03-14 07:43:09 浏览: 217
好的,以下是创建类Sum并编写sum静态重载方法的示例代码:
```java
public class Sum {
public static int sum(int a, int b) {
return a + b;
}
public static int sum(int a, int b, int c) {
return a + b + c;
}
public static int sum(int... nums) {
int result = 0;
for (int num : nums) {
result += num;
}
return result;
}
}
```
上述代码中,我们创建了一个名为Sum的类,并编写了三个名字都为sum的静态重载方法。其中,第一个方法可以用来计算两个整数的和,第二个方法可以用来计算三个整数的和,第三个方法则可以用来计算任意数量的整数的和。这样,我们就可以根据实际需要选择相应的sum方法来计算数的相加了。
相关问题
创建一个类Sum,编写出所有的数的相加的静态的重载方法,方法名为sum,并写出测试类
好的,以下是创建类Sum并编写sum静态重载方法的示例代码:
```java
public class Sum {
public static int sum(int a, int b) {
return a + b;
}
public static int sum(int a, int b, int c) {
return a + b + c;
}
public static int sum(int... nums) {
int result = 0;
for (int num : nums) {
result += num;
}
return result;
}
}
```
上述代码中,我们创建了一个名为Sum的类,并编写了三个名字都为sum的静态重载方法。其中,第一个方法可以用来计算两个整数的和,第二个方法可以用来计算三个整数的和,第三个方法则可以用来计算任意数量的整数的和。这样,我们就可以根据实际需要选择相应的sum方法来计算数的相加了。
下面是一个测试类的示例代码,可以用来测试我们刚刚编写的Sum类:
```java
public class SumTest {
public static void main(String[] args) {
int a = 3, b = 4, c = 5;
int[] nums = {1, 2, 3, 4, 5};
// 测试sum方法
int sum1 = Sum.sum(a, b);
int sum2 = Sum.sum(a, b, c);
int sum3 = Sum.sum(nums);
// 输出结果
System.out.println("sum1 = " + sum1); // sum1 = 7
System.out.println("sum2 = " + sum2); // sum2 = 12
System.out.println("sum3 = " + sum3); // sum3 = 15
}
}
```
在上述测试类中,我们首先定义了一些变量,然后分别调用了Sum类中的三个sum方法来计算这些变量的和,并将计算结果输出到控制台上。运行测试类后,我们可以看到控制台输出了三个sum方法的计算结果,证明我们的Sum类和sum方法都是可用的。
1.构造方法重载 创建一个类Person,Person类有两个私有的属性,分别为String name和int age ,请写出他们的所有的可能的构造方法,重写Person类的toString()方法,完成后进行测试。 2.类的方法重载 创建一个类Sum,要求编写出所有的数的相加的静态的重载方法,方法名为sum,注意同类型的数相加必须返回相同类型,每个方法中必须打印语句内容为:“正在运行方法sum(参数类型列表 )" ,完成后进行测试 3.静态属性,静态代码块,非静态代码块构造方法的运行顺序。 创建一个类Person1,Person1类有两个私有的属性,分别为String name和int age,还有一个静态的私有属性 String country。设置类的构造方法及get和set方法,构建两个静态代码块和非静态代码快,查看执行过程
1. Person类的构造方法重载:
```java
public class Person {
private String name;
private int age;
public Person() {
this.name = "unknown";
this.age = 0;
}
public Person(String name) {
this.name = name;
this.age = 0;
}
public Person(int age) {
this.name = "unknown";
this.age = age;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
```
2. Sum类的方法重载:
```java
public class Sum {
public static int sum(int a, int b) {
System.out.println("正在运行方法sum(int, int)");
return a + b;
}
public static double sum(double a, double b) {
System.out.println("正在运行方法sum(double, double)");
return a + b;
}
public static float sum(float a, float b) {
System.out.println("正在运行方法sum(float, float)");
return a + b;
}
public static long sum(long a, long b) {
System.out.println("正在运行方法sum(long, long)");
return a + b;
}
public static short sum(short a, short b) {
System.out.println("正在运行方法sum(short, short)");
return (short) (a + b);
}
}
```
3. Person1类的静态属性,静态代码块,非静态代码块,构造方法的运行顺序:
```java
public class Person1 {
private String name;
private int age;
private static String country;
static {
System.out.println("静态代码块1执行");
}
{
System.out.println("非静态代码块1执行");
}
public Person1() {
System.out.println("无参构造方法执行");
}
public Person1(String name, int age) {
this.name = name;
this.age = age;
System.out.println("有参构造方法执行");
}
public static void setCountry(String country) {
Person1.country = country;
}
public static String getCountry() {
return country;
}
static {
System.out.println("静态代码块2执行");
}
{
System.out.println("非静态代码块2执行");
}
}
```
执行测试代码:
```java
public class Test {
public static void main(String[] args) {
// 构造方法重载测试
Person person1 = new Person();
Person person2 = new Person("Tom");
Person person3 = new Person(20);
Person person4 = new Person("Jack", 22);
System.out.println(person1);
System.out.println(person2);
System.out.println(person3);
System.out.println(person4);
// 类的方法重载测试
Sum.sum(1, 2);
Sum.sum(1.0, 2.0);
Sum.sum(1L, 2L);
Sum.sum(1F, 2F);
Sum.sum((short) 1, (short) 2);
// 静态属性,静态代码块,非静态代码块,构造方法的运行顺序测试
System.out.println(Person1.getCountry());
Person1.setCountry("China");
System.out.println(Person1.getCountry());
Person1 person5 = new Person1();
Person1 person6 = new Person1("Tom", 20);
}
}
```
输出结果:
```
Person{name='unknown', age=0}
Person{name='Tom', age=0}
Person{name='unknown', age=20}
Person{name='Jack', age=22}
正在运行方法sum(int, int)
正在运行方法sum(double, double)
正在运行方法sum(long, long)
正在运行方法sum(float, float)
正在运行方法sum(short, short)
null
China
静态代码块1执行
静态代码块2执行
非静态代码块1执行
无参构造方法执行
非静态代码块1执行
有参构造方法执行
非静态代码块2执行
非静态代码块2执行
```
阅读全文