2.6 封装
1 封装概述
2 实现封装
封装例子:
这里封装的好处:外界不能随意修改、我们可以在set方法里面加入自己的判断,不符合业务的直接处理掉,更加安全
public class Student {
private String name;
private String sex;
//这个时候如果定义一个test类是访问不了上面的变量,通过定义get、ste方法实现访问和传值
public String getNanme(){
return name;
}
public void setName(String name){
this.name=name;
}
public String getSex(){
return sex;
}
public void setSex(String sex){
this.sex=sex;
}
}
public class Test_Jave {
public static void main(String[] args) {
Student s =new Student();
s.setName("张三");
s.setSex("不男不女");
System.out.print("姓名是:"+s.getNanme()+"性别是:"+s.getSex());
}
}
通过工具自动生成get、set方法
父类、子类
Extends只能继承一个类,JAVA不支持多重继承,只有一个父类
子类继承父类之后,子类可以调用父类的属性和方法,也可以重写父类的属性和方法
,还可以增加自己的属性和方法。
public class Animal {
// 演示类的继承
private String type;// 类型
private String skin;// 肤色
private int legCount;// 几条腿
// 定义一个方法
public void eat() {
System.out.print("父类的老虎在吃东西");
}
public void huxi() {
System.out.print("父类在呼吸");
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getSkin() {
return skin;
}
public void setSkin(String skin) {
this.skin = skin;
}
public int getLegCount() {
return legCount;
}
public void setLegCount(int legCount) {
this.legCount = legCount;
}
}
public class Tiger extends Animal {
// 继承Animal类的相关属性
// 定义子类老虎类
public void eat() {
//我们在父类中也定义eat方法,当子类重写eat方法的时候,在new对象的时候会调用子类重写后的方法
System.out.print("子类老虎在吃东西");
}
public void dajia(){
//定义老虎的特有的方法
System.out.print("子�老虎特有的�");
}
public static void main(String[] args) {
Tiger t=new Tiger();
t.setLegCount(4);
t.setSkin("橘***");
t.setType("东北虎");
//子类重写的方法
t.eat();
//下面是从父类继承过来的方法
t.dajia();
System.out.print("*********�始***************");
t.huxi();
System.out.print("*********�束***************");
System.out.print("老虎几条腿:"+t.getLegCount()+":老虎颜色是:"+t.getSkin()+":老虎类型:"+t.getType());
}
}
执行结果:
子类老虎在吃东西子�老虎特有的�*********�始***************父类在呼吸*********�束***************老虎几条腿:4:老虎颜色是:橘***:老虎类型:东北虎