Bootstrap

Java面向对象(oop)的基本概念简介说明

转自:

Java面向对象(oop)的基本概念简介说明

Java面向对象(OOP)的相关说明

    下文将讲述面向对象(OOP)的基础知识及面向对象编程的很多概念说明,如:继承,多态等。 

1. 面向对象编程

      对象是使用计算机语言表示现实中真实的物体,如:汽车,飞机,人员,等等。

1.1. 对象

       我们将任何拥有行为,状态的信息称之为对象。

1.2. 类

     类是一个逻辑实体,我们将一个对象集合称之为类

1.3. 继承

    一个对象获取父对象的所有属性和行为时,我们称之为继承
    继承的目的:使代码可重用性
   继承是面向对象的编程的内容
   当一个对象基于另一个对象构建。
   我们将这种操作模式称之为”继承“
    被继承的类称为超类,继承超类的类称为子类
    

     在java编程开发中,运用extends关键字来实现继承
   例:

class SuperTestClassA {
    public void test(){
        System.out.println("超类");
    }

}
// 继承 SuperTestClassA类
class SubTestClassB extends SuperTestClassA{

    public void testInfo(){
        System.out.println("子类");
    }

}

public class testClass{
    public static void main(String args[]){
        SubTestClassB a = new SubTestClassB ();

        a.testInfo();
        a.test();
    }
}

1.4. 多态性

     多态性:当一个类在不同的子类中相同的方法运行出的结果不同,我们将这种形式称之为”多态“
     java代码中,使用方法重载和方法重写来实现多态性
   例:

public class testClass{

    public void draw(){
        System.out.println("draw1");
    }

    public void draw(int d){
        System.out.println("draw2");
    }

    public void draw(int d, String c){
       System.out.println("draw3");
    }
}

 testClass类中,draw方法通过不同的参数,可实现不同的动作,我们将这种操作模式称之为”编译时多态“
还有一种操作模式,子类重写方法

方法重写示例

类:testClass.java

public interface testClass{

    public void draw();
}

Java

类:test1.java

public class test1 implements testClass{

    @Override
    public void draw(){
        System.out.println("draw1");
    }
}

Java

*类:test2.java*

public class  test2 implements testClass{

    @Override
    public void draw() {
        System.out.println("draw2");
    }

}

testClas是超类,它有两个子类test1test2,下面是运行时多态性的示例。

类:mainTest.java

public class mainTest{

    public static void main(String args[]){
        testClass t = new test1();
        t.draw();

        testClass t2= new test2(); 
        t2.draw();
    }
}
以上代码,实现运行时的动态效果

1.5. 抽象

  我们将Java代码中隐藏内部细节和显示功能称之为抽象

  如: 网络如何到达网站,这种模式我门不知道,但是我们知道输入网址就可以访问网站,这种操作模式就是一种抽象 

抽象是隐藏内部细节和用简单的术语描述事物的概念。


如:对外提供方法,只需调用就可以完成对象的相关动作

1.6. 封装

    将一些同一动作,放入包中,我们称之为封装
     
如:数据库访问,文件读写,网络访问等等。
     封装类的信息,我们常使用以下修饰符privateprotectedpublic关键字

2. 面向对象编程的优点

  1. OOP使开发和维护变得更容易,在面向过程的编程语言中,当代码随着项目规模的增长而增长,则不容易管理。

  2. OOP提供数据隐藏,而在面向过程的编程语言中,可以从任何地方访问全局数据。

  3. OOP提供更有效地模拟真实世界事件的能力。使用面向对象的编程语言,我们可以提供真实世界里的问题的解决方案

版权声明

;