Java封装(面向对象)
这个是大三来的时候刚开始又捡起来了java这个语言,以前是开设过这个课程的,但是上课都没哈好听讲,现在又开始学习java类的。
首先附上黑马程序员的一张听课截图吧
我就拿我在黑马程序员的例子上给自己的一个讲解吧
首先是javabean类
package google;
public class GirlFriend {
private String name;
private int age;
private String gender;
public void setName(String n){
name = n;
}
public String getName(){
return name;
}
public void setAge(int a){
if(a >= 18 && age <= 50){
age = a;
}
else {
System.out.println("非法参数");
}
}
public int getAge(){
return age;
}
public void setGender(String g)
{
gender = g;
}
public String getGender(){
return gender;
}
public void sleep(){
System.out.println("女朋友正在睡觉");
}
public void eat(){
System.out.println("女朋友正在吃饭");
}
}
java的bean类我想说的是,主要是里面的private这个权限修饰符,也就是私人的,这个就是只能在本类中访问,然后就是定义完一个private之后就需要写函数,一个是setXxx()一个是getXxx()这个不要问为什么这样定义,因为这个就是内部规定的,这样子也好理解,你定义一个之后,首先设置一个函数,其次得到一个函数,那么这个变量就定义成功了。
其次是java主类
package google;
public class GirlFriendTest {
public static void main(String[] args) {
GirlFriend gf1 = new GirlFriend();
gf1.setName("YiFei Liu");
gf1.setAge(18);
gf1.setGender("女");
System.out.println(gf1.getName());
System.out.println(gf1.getAge());
System.out.println(gf1.getGender());
gf1.sleep();
gf1.eat();
}
}
这个主类也是一样的,在上述javabeam类定义完private之后,那么在主类也是要先setXxx,在getXxx,也就是这样理解,我拿这个东西,我先设置一个,我在用,就是这个意思。