封装:将各种东西包在一起,然后以新的形式呈现出来,单元以类的形式呈现,
可以信息隐藏不让外界直接访问到。
将数据和方法包装进类中,加上具体实现隐藏,共同成为封装。
定义其类和属性,再是其方法的过程称为,封装类。
class student{
int a;
double score;
String name;
private int underpants=0;//
public void testfuction(int intermediary){
System.out.println("赋值前underoants="+underpants);
underpants=intermediary;
System.out.println("赋值后underpants="+underpants);
}
void printffuction(){
System.out.println("a="+a+" name="+name+" score="+score);
}
}
public class Demo {
public static void main(String[] args) {
student stu=new student(); //封装类,并且这里相当于和该类申请了一个地址
stu.a=10;
stu.score=99.5;
stu.name="xsn";
//stu.underpants=1; //这是同一个包的类,private修饰符是不允许这样掉用的。
stu.printffuction();
}
}
封装修饰符
位置 | private | public | 默认 | protected |
---|---|---|---|---|
同类 | 是 | 是 | 是 | 是 |
同一个包的类(就是在main函数中的定义) | 否 | 是 | 是 | 是 |
不同包内的子类 | 否 | 是 | 否 | 是 |
不同的包并且不是子类 | 否 | 是 | 否 | 否 |
修饰符号特定使用方法
private修饰符:一般可以在类中声明两个方法去修改它,比如
在上个类中
public void setunderpants(int newunderpants){
this.underpants=newunderpants;//this就是本类中
}
public int getunderpants(){
return underpants;
}
类中的构造方法
在类中,以类的名字声明一个方法,该方法名可以申请很多,只要里面的参数不一样即可。方法里面的参数可以赋给类中的属性。
要注意
- 该方法没有返回类型
- 方式实现主要是给字段进行初始值
- 构造方法的调用很特别,用new操作化(实例化对象的时候,自动会调用)
代码实列:
class student{
int age;
String name;
double sex;
student(int setage,String setname,double setsex){
System.out.println("这是构造一");
this.age=setage;
this.name=setname;
this.sex=setsex;
}
student(int setage,String setname){
System.out.println("这是构造二");
this.age=setage;
this.name=setname;
}
}
public class Demo {
public static void main(String[] args) {
student stu1=new student(18,"xsn",98.5);
student stu2=new student(18,"xsn2");
}
}