JAVA的三大特征:封装,继承,多态

来源:互联网 发布:在淘宝如何投诉卖家 编辑:程序博客网 时间:2024/05/13 07:30

JAV的三大特征(适宜人群:初学JAVA)

//1.封装
定义封装是把对象的属性和方法隐藏起来,使得人们在使用方法的时候直接调用即可,不必关心对象方法的具体实现
作用使得程序布局更清晰
类比我们在购买手机的时候,只需关心手机的价位,款式,品牌等来决定手机是不是我们的菜,
         而大可不必关心手机的生产具体的细节,比如说手机是哪个部门哪个车间哪个流水线的哪些工人使                      用了哪种螺丝钉安装的手机。

样例:我们定义一个对象Person,
             封装对象的name属性和run()方法, 
 
      public class Person {
  public String name;
  public void run(String name) {
  System.out.println("这个人跑的非常快");
   }
     }

我们要实现输出“整个人跑的非常快”这一句话,只需调用Person 的run()方法即可,不用关心它的代码如何          实现。
 
     public class Test {
public static void main(String[] args) {
Person p = new Person();
p.run();
}
     }


//2.继承
继承使用继承,使得子类拥有父类的属性和方法,子类可以对父类方法进行重写,也可以自己定义属性和方法
作用有利于代码的重用
类比儿子继承父亲的遗产
             如果父亲有一套房产,这样儿子通过继承,拥有了父亲的房产(虽然他儿子什么都没有做)

        样例
           第一种:只继承 
            父类:
            public class Person {
public void run() {
System.out.println("这个跑的非常快");
}
    }
  子类:
public class Student extends Person {

   }

测试:在这里我们没有给Student定义任何的属性和方法,但是我们可以通过调用Student的引用对象s调Student从父类Person继承的run()方法

public class Test {
public static void main(String[] args) {
Student s = new Student();
s.run();
}

  }


    第二种:继承并重写父类的方法
           子类:
  public class Student extends Person {
    public void run() {
System.out.println("这个学生跑的非常快");
}
       }
//3.多态

多态一个接口有多种不同的实现放方法,重写和重载是是java多态的两种主要的表现形式。

            1.重载:同一个方法名称,根据不同的参数设置(数量,类型,顺序),完成不同的功能

            2.重写:子类在实现父类方法的时候,重写父类的方法,调用不同的子类,实现不同的功能

             类比:1.给人定义一个speak()接口;

                    2.中国实现接口,实现说汉语功能

                                  。。。, 韩国人实现说韩语的功能

                                  。。。, 美国人实现说鸟语的功能

作用灵活方便,便于代码的维护和开发
类比
样例
  父类:
public class Person {
public void run() {
}
}
子类1:
public class Student extends Person {
public void run() {
System.out.println("这个学生跑的非常快");

}

        }

子类2:
public class Teacher extends Person {
public void run() {
System.out.println("这个老1师跑的非常慢");
}
        }
测试类:
public class Test {
public static void main(String[] args) {
Person p = new Teacher();
p.run();
}
}


0 0
原创粉丝点击