java面向对象的封装特性

java面向对象的封装特性

public class TestPrivate {
/*
* 封装:将具体的实现细节封装起来,提供公开的访问方式。 好处: 1.隐藏实现的细节,提供公共的访问方式, 2.提高了代码的复用性
* 3.提高了代码的安全性 private就是封装的一种体现 private修饰: 方法 变量
*
*/
public static void main(String[] args) {
// 创建Student类的对象
Student tom = new Student();
// 调用成员变量
tom.name = "tom";// 赋值
System.out.println(tom.name);
tom.setsex("男");
System.out.println("性别为:"+tom.getsex());
tom.setdate(2015);//查看并输出tom的出生年龄
System.out.println("出生年月为:"+tom.getdate());
tom.setheight(80);
System.out.println("体重为:"+tom.getheight());
tom.sethweight(160);
System.out.println("身高为:"+tom.getweight());
tom.add();
}

}
//建立一个封装的学生类
public class Student {
/*
* private 关键字 私有的意思。可以修饰成员变量和成员方法 特点; 被private修饰以后成员只能在奔雷中访问 private的应用
* 可以为private修饰的成员变量提供一个公共的访问方式 以后在写一个类的时候 1.把所有的成员变量都用private来修饰
* 2.提供对应的get/set方法 //
*/
public String name;
private String sex;
private int date;
private int height;
private int weight;
// 跑步的方法
public void run() {
System.out.println("在跑步");
}
public void playFootball() {
System.out.println("在踢足球");
}
// 给sex赋值
public void setsex(String a) {
if (a.equals("男") || a == "男" || a.equals("女孩") || a == "女") {
sex = a;
} else {
System.out.println("性别不明,无法计算");
}
}
// 查看sex属性的值
public String getsex() {
return sex;
}

// 给date赋值
public void setdate(int b) {
if (b > 1990 && b < 2017) {
date = b;
} else {
System.out.println("输入出生年月有误");
}
}

public int getdate() {
return date;
}

public void setheight(int c) {
if (c > 0 && c < 200) {
height = c;
} else {
System.out.println("输入体重有误");
}
}

public int getheight() {
return height;
}

public void sethweight(int d) {
if (d > 0 && d < 500) {
weight = d;
} else {
System.out.println("输入体重有误");
}
}

public int getweight() {
return weight;
}

/*
* . 方法对变量 (局部变量,成员变量)的使用规则 就近原则 方法内--)类内 局部变量--)成员变量
*
* this关键字:(成员变量用this局部不用)
* 代表所在类的对象的应用 特点 :方法被那个对象调用了,this就代表那个对象。 使用场景;
* 1.局部变量隐藏成员变量
* 2.代表当前类的成员变量和成员方法:(和进程中super向对应)
*
*/
int a = 200;

public void add() {
int a = 20;
System.out.println(this.a +this. a);//400
System.out.println(a + a);//40
System.out.println(this.a + a);//220
}

}



猜你喜欢

转载自blog.csdn.net/qq_37529302/article/details/58632896