Java 面向對象:重載overload、靜態static、構造器初始化變量

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();//創建對象調用
		

	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章