2015.11.16,Demo10,6.2处理对象,面向接口编程

原创 2015年11月20日 16:45:12

面向接口编程的:首先面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一。

在系统分析和架构中,分清层次和依赖关系,每个层次不是直接向其上层提供服务(即不是直接实例化在上层中),而是通过定义一组接口,仅向上层暴露其接口功能,上层对于下层仅仅是接口依赖,而不依赖具体类

好处:

首先对系统灵活性大有好处。当下层需要改变时,只要接口及接口功能不变,则上层不用做任何修改。甚至可以在不改动上层代码时将下层整个替换掉

接口体现的是一种规范和实现分离的设计哲学,充分利用接口可以极好地降低程序各模块之间的耦合,从而提高系统的可扩展性和可维护性。基于这种原则,通常推荐“面向接口”编程,而不是面向实现类编程,希望通过面向接口编程来降低程序的耦合

降低程序耦合度,提高系统的可扩展性和维护性。

CSDN上关于面向接口的一个解释博客:

http://blog.csdn.net/x_jian/article/details/4360276

http://blog.csdn.net/5iasp/article/details/18007173


public class Demo1 {

    private String name="hello";

     /*

      * 内部类

      * 内部类的特点

      * 1.内部类可以直接访问外部类的私有成员

      * 2.提供更好的封装性

      * 3.如果想要使用内部类中定义的成员,需要对内部类创建对象来实现调用

      * 内部类创建对象:

      * 静态内部类只能调用外部类的静态成员

      * 如果内部类中定义了静态的那么这个类必须是静态类

      */

 class a{

  String b=name;

 }

 public static void main(String[] args) {

  Demo1 d1=new Demo1();

  Demo1.a a=new Demo1().new a();//内部类的初始化

  System.out.println(a.b);

 }

}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

18天Java学习---15.面向对象编程10-Java中final关键字,抽象类与接口

抽象类与接口是Java中最重要部分之一,这里用较大的篇幅来做下这部分的笔记. 1. final关键字       在Java中, 可以使用final关键字修饰类、方法以及成员变量。       ...

android面向接口编程(抽象工厂模式,扩展性超强,Demo优化)

本分开始之前。咱先提出来几个疑问: 接口有什么用途? 面向接口编程的好处? 它和抽象类有什么区别? 能不能用抽象类代替接口呢? 它和面向对象编程是什么关系? 本分主要分为: 1.面向接口编程和面向对象...

面试宝典9,10,11--STL模板与容器;面向对象;继承与接口

1.删除array中所有的6(迭代器失效问题) #include #include using namespace std; void print(vector); int ...

Java 面向对象编程10

  • 2008-06-12 13:32
  • 6.15MB
  • 下载

C#编程入门_面向对象之继承_10

继承概念在C#中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有的类被称作父类,子类会自动拥有父类除构造方法和析构方法以外的所有成员。 继承关系的相关语法: cl...

面向接口编程理解demo

  • 2015-03-11 17:50
  • 2.37MB
  • 下载

黑马程序员_java编程基础10面向对象

---------------------- android培训、java培训、期待与您交流! ----------------------   1、finally中存放的是一定会被执行的代码。通...

PHP面向对象(OOP)编程完全教程:10.__set(),__get(),__isset(),__unset()四个方法的应用

作者:SNSGOU   一般来说,总是把类的属性定义为private,这更符合现实的逻辑。但是, 对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数”__get()”和”...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)