/**
*
*/
package oj.test;
/**
* @author jWX194406
*
*/
public class Recursion
{
static int sum = 0;
public static int recursionSum(int num)
{
sum += num;
if (num > 0)
{
recursionSum(num - 1);
}
return sum;
}
public int recursion(int num)
{
int sum = 0;
if (num > 0)
{
sum = num + recursion(num - 1);
}
return sum;
}
public static void main(String[] args)
{
System.out.println(recursionSum(100));
Recursion recursion = new Recursion();
System.out.println(recursion.recursion(100));
/**
* new Child("mike");
* 的执行顺序:
* 父类People的People()构造函数最先执行,然后是Child类的public Child(String name)构造函数,
* public Child(String name)构造函数里People father = new People(name + ":F");
* 调用父类People的public People(String name)构造函数。
*/
new Child("mike");
}
}
class People
{
String name;
public People()
{
System.out.print(1);
}
public People(String name)
{
System.out.print(2);
this.name = name;
}
}
class Child extends People
{
//People father;
public Child(String name)
{
System.out.print(3);
this.name = name;
People father = new People(name + ":F");
}
public Child()
{
System.out.print(4);
}
}