JAVA 基础知识整理-04 面向对象,static关键字

1. 封装

隐藏实现细节,提供公共的访问方式

好处:

a.隐藏实现细节,提供公共的访问方式
b.提高代码的复用性
c.提高代码的安全性
注:private 修饰也是封装的一种体现

2. private关键字

私有的意思,可以修饰成员变量和成员方法
特点:被private修饰后的成员只能在本类中使用。
注:推荐在写一个类的时候,把所有的成员变量用private修饰,提供对应的get和set方法。

3. this关键字

代表当前类的引用对象。

4. 构造方法

用于对对象的数据进行初始化。

格式:
方法名和类名相同;没有返回值类型,也不能有void;没有返回值
举例:

public class Constructor {

	public Constructor() {
		return;
	}

}

给成员变量赋值:
a.setXxx(); b.带参构造方法

注意:

  1. 如果没写构造方法,系统会提供一个默认的无参构造方法;
  2. 如果写了构造方法,系统将不再提供默认的构造方法。

5. static关键字
可以修饰成员变量和成员方法。
一半用于修饰被所有对象共享的成员变量和方法。

特点:
a.随着类的加载而加载
b.优先与对象存在
c.被类的所有对象共享
d.可以通过对象名和类名调用

静态变量和成员变量的区别:

静态变量 成员变量
属于类,类变量 属于对象,对象变量,实例变量
存储于方法的静态区 存在于堆内存
随着类的加载而加载随着类的消失而消失 随着对象的创建而存在,随着对象的消失而消失
可以通过对象名调用,也可以通过类名调用 只能通过对象名调用

举例:
1.static修饰成员变量
在这里插入图片描述
2.static修饰成员
创建Constructor类,里面加上静态方法People()

package smallprogrames;

public class Constructor {
	private String name;
	private String age;
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public Constructor() {
		return;
	}

	public Constructor(String name, String age) {
		//super();
		this.name = name;
		this.age = age;
		
	}
	public void Work(){
		System.out.println("姓名:"+name+"年龄:"+age+"在工作。。。");
	}
	public static void People(){
		System.out.println("人类。。。。。。");
	}
}

测试

package smallprogrames;

public class Test0 {
public static void main(String[] args){
	Constructor con = new Constructor();
	con.setName("kathy");
	con.setAge("34");
	Constructor con0 = new Constructor("Mark","40");
	con.Work();
	Constructor.People();
	con.People();
	con0.Work();
}
}

运行结果:

姓名:kathy年龄:34在工作。。。
人类。。。。。。
人类。。。。。。
姓名:Mark年龄:40在工作。。。

注:
1.静态方法推荐使用 类名.方法名 的方式调用。
2.一般用于修饰被所有对象共享的成员变量和方法。
3.静态方法,方法体内部不可以使用非静态变量。
4.用的比较多的main方法也是静态方法。

6.关于main方法

main方法被jvm调用

public:最大权限修饰符
static:不用创建对象即可调用
void:返回给jvm没有意义
main:常见方法入口名称
String[ ] args:是字符串数组,可以接受数据,提供程序的灵活性

发布了55 篇原创文章 · 获赞 0 · 访问量 2068

猜你喜欢

转载自blog.csdn.net/KathyLJQ/article/details/104213180