package com.neusoft.overload;
/**
* 方法的重载(overload):函数的重载就是在同一个类中允许同时存在一个以上同名的方法
* 1.成员方法(类中的方法):判断
* 2.特殊的方法(构造方法):初始化
* 方法重载的规则:
* 1.函数名称相同
* 2.函数的参数必须不同:可以参数个数不同,也可以参数类型不同
* 3.函数的返回值类型,可以相同也可以不同,与返回值类型无关
*/
public class Test {
public void m1(){
}
public void m1(int a){
}
public static void main(String[] args) {
Test test = new Test();
test.m1(1);
System.out.println(1);
}
}
package com.neusoft.override;
import com.neusoft.overload.StaticDemo;
public class Test_This {
public Test_This(){
System.out.println("1");
}
public Test_This(int a){
this();
System.out.println("2");
}
public Test_This(int a, int b){
this(a);
System.out.println("3");
}
public static void main(String[] args){
Test_This a = new Test_This(4,6);//1 2 3
}
}
package com.neusoft.overload;
public class Person {
private String name;
private int age;
private String school;
public Person(){
}
public Person(String name,int age,String school){
this.name = name;//初始化
this.age = age;
this.school = school;
}
public static void main(String[] args) {
Person person1 = new Person();
Person person2 = new Person("tom",20,"neusoft");
}
}
package com.neusoft.overload;
/**
* static静态 它可以修饰:
* 1.静态变量:可以作为累加器,每次创建一个新的对象静态变量不会赋值为初始值。
* 而实例变量每次创建新的对象都会赋为初始值。
* 成员方法里不可以创建静态变量。
* 静态方法里可以直接访问静态变量,不可以直接访问非静态变量。
* 2.静态方法:类名.method()
* 3.静态代码块(作用:可以初始化)不常用 了解
*
* @author Administrator
*
*/
public class StaticDemo {
static int i; //成员变量统领全类
int b;
public StaticDemo() {//静态方法不可以放在构造方法里
i++;//静态方法里可以直接访问静态变量
System.out.println(i);
}
public static void t(){
// b = 2;//静态方法里不可以直接访问非静态变量
}
public static void t1() {
System.out.println("t1");
}
public static void t2(){
// Static int a; // 成员方法里不可以创建静态变量。
System.out.println("t2");
}
public static void main(String[] args) {
StaticDemo.t1();//静态方法直接调用:作为通用的工具类使用
StaticDemo sd1 = new StaticDemo();
StaticDemo sd2 = new StaticDemo();
StaticDemo sd3 = new StaticDemo();
StaticDemo sd4 = new StaticDemo();
sd1.t1();//创建对象调用
}
}