Java入门 之 类和对象(一)

1. 类

  1.1 类的一般形式

    1.1.1 举例

class Human
{
    //声明各类变量来描述类的属性
    String name;
    String sex;
    int age;
    String addr;
    void work(){System.out.println("I am working")}
    void eat(){System.out.println("I am eating")}
}

    1.1.2 关于修饰符

      - private:  只有本类可见

      - protected:  本类、子类、同一包的类可见

      - 默认(无修饰符):  本类、同一包的类可见

      - public:  对任何类可见

package chap5;
	
class Human{
	String name;
	String sex;
	int age;
	String addr;
	void work() {
		System.out.println("I am working");
	}
	void eat() {
		System.out.println("I am eating");
	}
	//定义一个方法,返回值为String类型
	String getState(int time) {
		String state = null;
		if(time>=0 && time<=24){
			if(time>8 && time<17) 
				state="I am working";
			else if(time>17 && time<22) 
				state="I am studing";
			else if(time>22 || time<7) 
				state="I am sleeping";
		}
		else
			state="incorrect time";
		return state;
	}
}

	
public class MethodDemo {
	public static void main(String[] args) {
		Human zs = new Human();
		//设定对象的属性值
		zs.name = "wayne";
		zs.age = 29;
		zs.sex = "male";
		zs.addr = "Shanghai China";
		System.out.println(zs.name + ", what will you do at 23 o'clock?");
		//调用getState()方法,把返回值打印出来
		System.out.println(zs.getState(23));
		System.out.println("how about 3pm?");
		System.out.println(zs.getState(15));
	}
}

  1.2 方法的重载(overloading)

    1.2.1 Java根据参数类型和参数的数目来确定调用哪一个方法

package chap5;

public class OverloadDemo {
	
	//定义一些列的方法,这些方法的参数是不同的,通过参数的不同来调用不同的方法
	void method() {
		System.out.println("无参数方法被调用");
	}
	void method(int i) {
		System.out.println("参数为int类型被调用");
	}
	void method(double d) {
		System.out.println("参数为double类型被调用");
	}
	void method(String s) {
		System.out.println("参数为String类型被调用");
	}
	
	public static void main(String[] args) {
		OverloadDemo ov = new OverloadDemo();
		//使用不同的参数调用方法
		ov.method();
		ov.method(4);
		ov.method(4.5D);
		ov.method("a string");
	}
}

    1.2.2 当参数的类型并不能完全匹配时,Java的自动类型转换会起作用

package chap5;

public class OverloadDemo2 {
	
	void method() {
		System.out.println("无参数方法被调用");
	}
	void method(double d) {
		System.out.println("参数为double方法被调用");
	}
	void method(String s) {
		System.out.println("参数为string方法被调用");
	}
	
	public static void main(String[] args) {
		OverloadDemo2 ov = new OverloadDemo2();
		ov.method();
		ov.method(4);  //无参数为int型方法,Java就找到了最为相似的方法method(double)
		ov.method(4.5D);
		ov.method("a string");
	}
}

2. 对象

  2.1 对象的创建和使用

  2.2 构造函数

3. 关键字 static

  3.1 静态变量

  3.2 静态方法

  3.3 静态常量

4. 参数传递

  4.1 基本类型的参数传递

  4.2 对象类型的参数传递

5. 包

  5.1 包的使用

  5.2 导入包

  5.3 在Eclipse中使用包

6. 小结

原文地址:https://www.cnblogs.com/wnzhong/p/7892801.html