封装
所谓的封装就是把类的属性和方法使用private修饰,不允许类的调用者直接访问,我们定义如下一个类,可以看到所有的成员变量和成员方法都使用private修饰了,我们现在来使用一下这个类。
class Person {
private String name;
private int age;
private int height;
private void run(){
System.out.println("能跑");
}
}
如果想访问这个类中的属性则需要使用getter和setter方法
class Person {
private String name;
private int age;
private int height;
private void run(){
System.out.println("能跑");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
}
继承
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
现在有一个动物类(父类)
public class Animal {
private String name;
private int id;
public Animal(String myName, int myid) {
name = myName;
id = myid;
}
public void eat(){
System.out.println(name+"正在吃");
}
public void sleep(){
System.out.println(name+"正在睡");
}
public void introduction() {
System.out.println("大家好!我是" + id + "号" + name + ".");
}
}
我想定义一个狗类(子类)因为狗类跟动物类相同的属性跟方法所以我可以直接继承动物类
public class Dog extends Animal{
public Dog(String myName,int myId){
super(myName , myId);
}
}
这样Dog类就可以直接使用Animal类中的非私有的属性和方法,如果后面需要修改Animal类跟Dog类的某一个属性则需要修改Animal类的属性即可,这样可以增加代码的复用性。