1. 封装
隐藏实现细节,提供公共的访问方式
好处:
a.隐藏实现细节,提供公共的访问方式
b.提高代码的复用性
c.提高代码的安全性
注:private 修饰也是封装的一种体现
2. private关键字
私有的意思,可以修饰成员变量和成员方法
特点:被private修饰后的成员只能在本类中使用。
注:推荐在写一个类的时候,把所有的成员变量用private修饰,提供对应的get和set方法。
3. this关键字
代表当前类的引用对象。
4. 构造方法
用于对对象的数据进行初始化。
格式:
方法名和类名相同;没有返回值类型,也不能有void;没有返回值
举例:
public class Constructor {
public Constructor() {
return;
}
}
给成员变量赋值:
a.setXxx(); b.带参构造方法
注意:
- 如果没写构造方法,系统会提供一个默认的无参构造方法;
- 如果写了构造方法,系统将不再提供默认的构造方法。
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:是字符串数组,可以接受数据,提供程序的灵活性